我有一个小环AS3封闭混乱
var a:Array = [{name:Test1},{name:Test2},{name:Test3},{name:Test4}]
var b:GenericButton; //A pretty basic button component
for(var i:int = 0; i < a.length; i++){
b = new GenericButton(a[i].name, function():void { trace(i) });
this.addChild(b);
}
按钮被按下时,执行提供给GenericButton的功能。
我遇到的问题是,无论按什么按钮,我总是输出4的值(数组的长度)。
我如何确保在第一个按钮被按下时跟踪0,第二个按钮被按下时是否等于1?
为什么使用非类型化的VAR和非类型化的返回参数?它应该是'Function'和'void'。 – 2012-03-02 07:43:58
我确定'arguments.callee'在AS3中被删除了,是吗? – alxx 2012-03-02 07:48:45
@ValentinSimonov函数的返回类型实际上是未知的(取决于从外部传递的'func')。 'f'是无类型的,因为我们需要将'thisArg'和'func'粘贴到它上面。 – Manish 2012-03-02 15:13:40