関数の中に関数を入れた場合(関数クロージャというらしい)、中の関数でのthisの扱いには注意が必要。

例えば。。。

//フレームアクション
function main(){
trace(this);
//mc赤い四角定義
	var mc = new MovieClip();
	mc.graphics.beginFill(0xFF0000);
	mc.graphics.drawRect(0,0,100,100);
	mc.graphics.endFill();
	sub();
//関数クロージャ(たぶん)
	function sub(){
trace(this);
		addChild(mc);
	}
}
main();

上記を実行すると100×100の赤い四角がx:0,y:0の位置に表示される。
ここで注意したいのが、function subの中のaddChild(mc);
これは本来の文法的にはDisplayObjectContainer.addChild(mc)
DisplayObjectContainerが記載されてないから、thisになるのか、
と思うとそうでもない。。。

this.addChild(mc)

これはエラーになります。
finction sub()のthisと、function main()のthisはtrace結果を見ると違うものです。
よって、関数クロージャのaddChild(~)は、thisが省略されてるわけではないってことで。
※この例では”メインのタイムライン”になっているみたい。(フレームアクションなので)