我想调用一个使用数组作为参数的函数:
const x = ['p0', 'p1', 'p2'];
call_me(x[0], x[1], x[2]); // I don't like it
function call_me (param0, param1, param2 ) {
// ...
}
有没有更好的方法将x
的内容传递给call_me()
发布于 2010-05-18 17:59:51
为什么不在函数中传递整个数组并根据需要进行处理呢?
var x = [ 'p0', 'p1', 'p2' ];
call_me(x);
function call_me(params) {
for (i=0; i<params.length; i++) {
alert(params[i])
}
}
发布于 2016-01-12 02:25:38
在ES6标准中,有一个新的spread operator ...
可以做到这一点。
call_me(...x)
除了IE之外,所有主流浏览器都支持它。
扩展运算符可以做许多其他有用的事情,链接的文档在显示这一点方面做得非常好。
发布于 2010-05-18 18:05:20
假设call_me是一个全局函数,所以您不希望设置它。
var x = ['p0', 'p1', 'p2'];
call_me.apply(null, x);
https://stackoverflow.com/questions/2856059
复制相似问题