请帮助我解决以下问题:函数参数和它们的数量每次都可能不同。如何正确阅读参数?
例如:
function fnMyfunction (params) { console.log (params) } //--> displays 1 var res = fnMyfunction ("1", 2, 78, "s");
当我读取函数内的参数时,我只得到第一个值。 是否可以将参数作为列表发送?
答案 0 :(得分:0)
在函数内使用参数:
function fnMyfunction ()
{ console.log (arguments); }
var res = fnMyfunction ("1", 2, 78, "s");
答案 1 :(得分:0)
你基本上有两种选择。第一个是使用arguments
类似数组的集合来访问所有传递的参数。
function fnMyfunction(params) {
console.log(arguments);
} //--> ["1", 2, 78, "s"] array-like collection, while params is "1"
var res = fnMyfunction("1", 2, 78, "s");
另一种选择可能是为数组或对象传递已经存在的参数:
function fnMyfunction(params) {
console.log (params);
} //--> ["1", 2, 78, "s"] is array
var res = fnMyfunction(["1", 2, 78, "s"]);
通常,如果您计划使用具有许多参数的函数,那么设计它通常是有意义的,因此它只接受较少的参数,通常只有一个具有必要属性集的对象。这是解决问题的最灵活方法。