如何将数组作为参数传递给函数?

时间:2015-07-22 09:29:07

标签: javascript

if(a == 1){
  parameter = ['1','true','a'];
}else{
  parameter = ['2','false','b'];
}

function run(a,b,c){

}

如何将数组作为参数传递给函数run?我尝试了JSON.Stingify,但它还没有工作,因为我仍然在控制台中看到数组括号.log()

3 个答案:

答案 0 :(得分:1)

您可以使用javascript apply()

run.apply(this, parameter);

答案 1 :(得分:0)

以下是两个选项。

直接调用该函数。

if(a == 1){
    run('1', 'true', 'a');
}else{
    run('2', 'false', 'b');
}

或者使用Function.prototype.apply以数组作为参数调用函数。

if(a == 1){
    parameter = ['1','true','a'];
}else{
    parameter = ['2','false','b'];
}

run.apply(null, parameter);

答案 2 :(得分:0)

就这样做:

http://codepen.io/anon/pen/xGaWNr

代码

x = ['2','false','b'];

var run = function (x0,x1,x2) {
    document.write (x0+'<br>');
    document.write (x1+'<br>');
    document.write (x2+'<br>');
}

run(x[0],x[1],x[2]);

输出

2
false
b