基本上,我想使用数组作为我的参数列表。但是,该函数有一个名为ranges:[]的参数,我的特定范围列表应该放在那里。
我的代码如下:
var args = new Array();
args.push({ color: '#c1f5b0', start: 0, length: 5 })
args.push({ color: '#c1f5b0', start: 6, length: 5 })
$('#demo').someFunc({
ranges: [
//list of objects goes here
]
});
基本上,我希望打印对象列表为args [0],args [1]。显然,将语法args[0], args[1]
放入范围会产生我想要的行为。但它并不总是必然是数组中的两个元素。我尝试了args.join()
,但只是将数组内容作为字符串返回。在args
中简单地使用console.log(args)
可以准确地给出我想要的行为,但我无法在ranges: [ ] code
内重现该行为。
答案 0 :(得分:3)
在开始之前,请记住,JS列表和数组是相同的。
如果要使用参数数组调用函数:
someFunc.apply($('#demo'), args);
如果您想参加args
数组:
someFunc({ranges: args.slice(0, 10)});
如果要将数组分解为参数,请使用ES6:
someFunc({ranges: [...args]});
答案 1 :(得分:2)
将数组作为'ranges'参数的值传递。您不需要创建新的数组文字。
$('#demo').someFunc({
ranges: args
});
答案 2 :(得分:1)
也许你可以试试:
$('#demo').someFunc({
ranges: args
});