1

我在时间线中编写了以下代码。

    function chk():void
{

}

this["temp"]=chk;

                          /*   output   */
trace(this.chk);      //function Function() {}


trace(chk);          //function Function() {}

trace(this.temp)   //function Function() {}

trace(temp)        // Access of undefined property temp.

我已经给出了我得到的输出。我的疑问是为什么 this.temp 与 temp 不同,其中 this.chk 与 chk 相同

4

1 回答 1

1

该变量temp在编译时不可用。所以编译器会推送一个错误。但是在运行时,您的程序会执行此代码this["temp"]=chk;并且变量temp变为可用。

于 2012-10-23T16:31:22.040 回答