Actionscript 3 什么';这是通过引用调用函数的一个例子吗?

Actionscript 3 什么';这是通过引用调用函数的一个例子吗?,actionscript-3,function,Actionscript 3,Function,通过引用调用函数(与直接调用相反)的示例是什么?如果我理解这个问题,您希望这样: function myFunction():void { trace("calling my function!"); } var functions:Array = [myFunction]; functions[0](); // traces "calling my function!" 其思想是,每个函数也是一个对象。当您使用myFunction()时,如果将“myFunction”视为变量(注意:no(

通过引用调用函数(与直接调用相反)的示例是什么?

如果我理解这个问题,您希望这样:

function myFunction():void { trace("calling my function!"); }
var functions:Array = [myFunction];

functions[0](); // traces "calling my function!"
其思想是,每个函数也是一个对象。当您使用myFunction()时,如果将“myFunction”视为变量(注意:no()),则可以传递对该函数的引用。例如,回调就是这样工作的

例如:

this.addEventListener(MouseEvent.CLICK, clickHandler);
function clickHandler(e:MouseEvent):void {
trace("CLICK!");
}
在addEventListener调用中,您将传递对clickHandler函数的引用。然后Flash知道,每当此对象接收到类型为MouseEvent.CLICK的事件时,它都应该调用引用的函数(在本例中为clickHandler)


这有意义吗?

如果我理解这个问题,你想要这样的东西:

function myFunction():void { trace("calling my function!"); }
var functions:Array = [myFunction];

functions[0](); // traces "calling my function!"
其思想是,每个函数也是一个对象。当您使用myFunction()时,如果将“myFunction”视为变量(注意:no()),则可以传递对该函数的引用。例如,回调就是这样工作的

例如:

this.addEventListener(MouseEvent.CLICK, clickHandler);
function clickHandler(e:MouseEvent):void {
trace("CLICK!");
}
在addEventListener调用中,您将传递对clickHandler函数的引用。然后Flash知道,每当此对象接收到类型为MouseEvent.CLICK的事件时,它都应该调用引用的函数(在本例中为clickHandler)


这有意义吗?

你的意思是像
var-functionName:Function=Function(arg:::*{…}
而不是
functionName(arg:*}:*{…}
?你的意思是像
var-functionName:Function=Function(arg:::*{…}
而不是
Function-functionName(arg:*{…}
?值得注意的是函数引用实际上可以存储在变量类型的
函数中,比如
var callback:function=someFunction
如果您想在函数之外存储参数,可以将它们放在
var-parameters:Array
中。然后,您可以使用函数对象的apply()方法调用函数:
callback.apply(null,parameters)
。值得注意的是,函数引用实际上可以存储在变量类型的
function
,如
var callback:function=someFunction
如果您想在函数之外存储参数,可以将它们放在
var-parameters:Array
中。然后,您可以使用函数对象的apply()方法调用该函数:
callback.apply(null,parameters)