我正在调用两个传递相同参数的函数。
foo1('p1','p2','p3','p4','p5');
//...
foo2('p1','p2','p3','p4','p5');
我可以执行以下操作,一次声明参数,然后将其传递给两个函数吗?
var params = 'p1','p2','p3','p4','p5'; // what's the syntax here?
foo1(params);
foo2(params);
答案 0 :(得分:2)
是的,您可以:将它们放入数组并使用...
(在现代环境中)或apply
(在较旧的环境中):
在现代环境中:
const params = ['p1','p2','p3','p4','p5'];
// −−−−−−−−−−−−^−−−−−−−−−−−−−−−−−−−−−−−−^
foo1(...params);
// −−^^^
foo2(...params);
// −−^^^
在较旧的环境中:
var params = ['p1','p2','p3','p4','p5'];
// −−−−−−−−−−^−−−−−−−−−−−−−−−−−−−−−−−−^
foo1.apply(null, params);
// −^^^^^^^^^^^^
foo2.apply(null, params);
// −^^^^^^^^^^^^