javascript - 向 JS 函数传递未知数量的参数

标签 javascript arrays function

某些 javascript 库中的一种模式是能够将任意数量的参数传递给函数:

functiona(param1)
functiona(param1, param2, param3)
functiona(param1, param2)

我有一个长度未知的数组,我想将所有数组项作为参数传递给像 functiona() 这样的函数。这可能吗?如果是这样,执行此操作的语法是什么?

最佳答案

你想要的可能是Function.prototype.apply() .

用法:

var params = [param1, param2, param3];
functiona.apply(this, params);

正如其他人指出的,functiona 声明可以使用 arguments ,例如:

function functiona()
{
    var param1 = this.arguments[0];
    var param2 = this.arguments[1];
}

但它也可以使用任意数量的普通参数:

function foo(x, y)
{
    console.log(x);
}
foo.apply(this, [10, 0, null]); // outputs 10

关于javascript - 向 JS 函数传递未知数量的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30695183/

相关文章:

javascript - 在 JavaScript 中用转义字符替换特定字符串

javascript - 如何设置 JSFiddle 以与 Kendo Dataviz 一起使用?

java - 在 do....while 语句中使用数组

python - 如何在没有两个连续元素重复的情况下洗牌数字数组?

excel - 如何在 Excel 中根据多个 If 计算总和?

arrays - 根据另一个数组对一个数组进行排序,swift

python - 如何通过python打开一个文件

javascript - Internet Explorer 相当于 window.performance.memory?

javascript - 你如何停止 Javascript 中的无限循环?

java - 数组中存在重复值,但未找到重复值