如何在javascript函数中传递多个参数

时间:2017-08-28 10:24:24

标签: javascript

function ceshi(test,lyj,param1,parm2){
    console.log(arguments)
}
var params = [2,3];
ceshi(eval('2,3'));

如果params不确定,我怎样才能通过方法传递params。我想实现以下结果。

该函数有固定的参数,但我有多个函数,如

ceshi(1,2,123)
ceshi(1,3123)
ceshi('xxx','ssssss','12313',12)

3 个答案:

答案 0 :(得分:0)

通过从数组传递参数来调用函数

  1. 使用点差运算符ceshi(...params)
  2. 使用apply函数调用ceshi.apply(<Context>, params)

答案 1 :(得分:0)

您可以在ECMAScript 6中使用spread运算符,如下所示:

function ceshi(...params) {
  console.log(params[0]);
  console.log(params[1]);
  console.log(params[2]);
}

或者在这样的函数中使用“arguments”变量:

function ceshi() {
  console.log(arguments[0]);
  console.log(arguments[1]);
  console.log(arguments[2]);
}

为了更深入地了解,我强烈建议您阅读this material

答案 2 :(得分:0)

您可以使用对象设置参数,例如:

        function ceshi(options)
        { 
            var param1= options.param1 || "dafaultValue1";
            var param2= options.param2 || "defaultValue2";
            console.log(param1);
            console.log(param2);
        }

        ceshi({param1: "value1", param2:"value2"});
        ceshi({param2:"value2"});
        ceshi({param1: "value1"});