我可以将不定数量的参数传递给Javascript函数吗?我对JS知识有限。我想要实现以下功能:
function CalculateAB3(data, val1, val2, ...)
{
...
}
我可以将不定数量的参数传递给Javascript函数吗?我对JS知识有限。我想要实现以下功能:
function CalculateAB3(data, val1, val2, ...)
{
...
}
您可以在函数中传递多个参数,并通过arguments变量进行访问。以下是一个返回您传递的所有参数之和的函数示例
var sum = function () {
var res = 0;
for (var i = 0; i < arguments.length; i++) {
res += parseInt(arguments[i]);
}
return res;
}
您可以按以下方式进行调用:
sum(1, 2, 3); // returns 6
对于你的问题,简单来说,当然可以。
但是我个人更喜欢传递一个对象而不是传递 n
个参数。
例如:
function CalculateAB3(obj)
{
var var1= obj.var1 || 0; //if obj.var1 is null, 0 will be set to var1
//rest of parameters
}
这里的||
是逻辑运算符,想要了解更多,请访问http://codepb.com/null-coalescing-operator-in-javascript/
在JavaScript中是否有"null coalescing"运算符?是一个不错的阅读材料。
可以的,你可以做到。像这样使用变量arguments
:
function test() {
for(var i=0; i<arguments.length; i++) {
console.log(arguments[i])
}
}