Actionscript 2从变量调用函数

时间:2010-03-22 16:22:41

标签: actionscript-2

如何通过变量调用函数。

var upfunction = init;
//or
var upfunction = init();

我已经尝试过上面的代码但它不起作用。我希望能够从按键调用该变量并更改变量函数。例如。

function init(){
   //Do whatever
}

function init2(){
   //Do another thing
}

var upfunction = init();
if (Key.getCode() == Key.UP)
{
    upfunction;
} 

然后再做

upfunction = init2();

这样我可以在没有太多代码的情况下更改功能。很抱歉,如果这是一个菜鸟问题,但我所做的只是复制并粘贴我找到的代码。

1 个答案:

答案 0 :(得分:1)

你几乎对你所拥有的东西是正确的...只需记住调用一个函数,你需要在之后包含括号:'upFuntion();'。定义函数时还需要括号。括号将包含任何函数参数。

但要引用该函数(例如将其赋值给变量时),请不要使用括号:'upFunction = init;'

所以你的例子看起来像这样:

function init1():Void {
    trace("hello this is init1");
}

function init2():Void {
    trace("hey, this is init2");
}

var upFunction:Function = init1;//type declaration is optional but recommended

upFunction();// hello this is init1

upFunction = init2;

upFunction();//hey, this is init2