在這種情況下,關鍵字this
代表global object
,它是創建函數的某個備用Universe,因爲它是在任何自定義類或對象之外定義的。
Main類
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class Main extends MovieClip
{
public function Main()
{
// trace(this);
stage.addEventListener(MouseEvent.CLICK, function(e:MouseEvent):void
{
trace(this);
});
}
}
}
輸出
[object global]
在下面的例子中,函數聽者toClick
被定義爲method of the Main class
,所以this
指object Main
。
正確的代碼
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class Main extends MovieClip
{
public function Main()
{
// trace(this);
stage.addEventListener(MouseEvent.CLICK, toClick);
}
private function toClick(e:MouseEvent):void
{
trace(this);
}
}
}
輸出
[object Main]