我想将不确定数量的电影剪辑传递给函数,就像这样
function Test(...args)
{
for(var item in args){
item.x = 100;
}
}
但是使用这种方法不起作用,有什么解决办法吗?
我想将不确定数量的电影剪辑传递给函数,就像这样
function Test(...args)
{
for(var item in args){
item.x = 100;
}
}
但是使用这种方法不起作用,有什么解决办法吗?
你快到了,你只需要使用一个for each
循环来让你的例子正常工作:
function Test(...args)
{
for each(var item:MovieClip in args)
// ^^^^
{
item.x = 100;
}
}
然而,更好的做法是接受Array
或Vector
持有 MovieClip。这将大大提高以后代码的可读性:
function Test(list:Vector.<MovieClip>)
{
for each(var item:MovieClip in list)
{
item.x = 100;
}
}
使用arguments
;请参阅Adobe 参考文档(适用于 AS3)、MDN(适用于 JS)或此示例 jsfiddle(适用于工作示例)。
[注意:最初标记为 JS 的问题,将 javascript/jsfiddle 留在那里以供参考]