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 に答える