将数组传递给 JavaScript 中的函数
Mehvish Ashiq
2023年10月12日
-
使用
apply()
方法将数组传递给 JavaScript 中的函数 -
使用
spread
运算符将数组传递给 JavaScript 中的函数 -
使用
arguments
对象将数组传递给 JavaScript 中的函数
本教程旨在教你使用 JavaScript 将数组传递给函数的不同方法。它突出了 apply()
方法、spread
运算符、arguments
对象以及将整个数组作为参数传递给函数的方法。
apply()
方法执行具有 this
值的函数,并将参数作为数组或类似数组的对象提供。它用于必须传递的特定函数。
在 apply()
方法中,this
值是调用函数的第一个参数,而 arguments
是要传递的参数数组的第二个参数。
请记住,如果 this
值不能是函数看到的原始值(如果该方法是非严格模式代码中的函数)。全局对象将是 null
和 undefined
,而原始值将被装箱。
ECMAScript 6 (ES6) 提供了一个名为 spread
的惊人运算符。它在 JavaScript 代码中写为 ...
。该运算符允许迭代,例如数组。它用于处理所有数组元素或对象。
另一方面,arguments
对象是一个类数组(意味着 arguments
具有 length
属性)对象,我们可以在具有参数值的函数中使用它。
使用 apply()
方法将数组传递给 JavaScript 中的函数
var names = ['Mehvish', 'John', 'Henry', 'Thomas'];
displayName.apply(this, names);
function displayName() {
for (var i = 0; i < names.length; i++) {
console.log(names[i]);
}
}
输出:
"Mehvish"
"John"
"Henry"
"Thomas"
在上面给出的示例中,我们有一个 names
数组和一个名为 displayName()
的函数,用于打印 names
数组的所有元素。我们使用 apply()
方法将数组传递给 displayName()
函数。
使用 spread
运算符将数组传递给 JavaScript 中的函数
var names = ['Mehvish', 'John', 'Henry', 'Thomas'];
displayName(...names);
function displayName() {
for (var i = 0; i < names.length; i++) {
console.log(names[i]);
}
}
输出:
"Mehvish"
"John"
"Henry"
"Thomas"
在这里,我们再次使用 names
数组和 displayNames()
函数来打印所有数组元素。我们使用 spread
语法 ...
将整个数组传递给函数。
使用 arguments
对象将数组传递给 JavaScript 中的函数
var names = ['Mehvish', 'John', 'Henry', 'Thomas'];
displayName(names);
function displayName() {
for (var i = 0; i < arguments.length; i++) {
console.log(arguments[i]);
}
}
输出:
["Mehvish", "John", "Henry", "Thomas"]
在上面给出的代码片段中,我们使用 arguments
对象将 names
数组传递给 displayName()
函数。我们可以将整个数组作为参数传递给函数以简化代码。
为此,你可以练习以下代码。
var names = ['Mehvish', 'John', 'Henry', 'Thomas'];
displayName(names);
function displayName() {
for (var i = 0; i < names.length; i++) {
console.log(names[i]);
}
}
输出:
"Mehvish"
"John"
"Henry"
"Thomas"
作者: Mehvish Ashiq