将数组传递给 JavaScript 中的函数
Mehvish Ashiq
2023年10月12日
JavaScript
JavaScript Array
-
使用
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"
Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe
作者: Mehvish Ashiq
