stage شئ واحدی است که در هر فایل swf، به عنوان دربرگیرنده اصلی محسوب شده و تمام اشیاء و تصاویر دیگر، درون لیست نمایش آن ترسیم خواهند شد.
اما شئ دیگری به نام root نیز وجود دارد که مستقیماً به Timeline اصلی انیمیشن اشاره دارد. به عبارت ساده‌تر، شئ root که در AS2.0 به صورت _root مورد ارجاع قرار می‌گرفت، یک DisplayObjectContainer است که به صورت پیش‌فرض در عمق صفر از شئ stage قرار دارد.
به صورت پیش‌فرض، تمام ترسیماتی که بر روی صفحه انیمیشن فلش صورت می‌گیرد، به جای اینکه مستقیماً در لیست نمایش stage باشد، در شئ root انجام می‌شود. به عبارتی تمامی اشیاء و محتوای انیمیشن فلش، زیر مجموعه شئ root هستند که یک DisplayObjectContainer پیش‌فرض و در عمق صفر از شئ دربرگیرنده stage قرار دارد.
مثال:

trace(stage,  root);    
// Output: [ object Stage] [ object MainTimeline]

نکته‌ای که باید در مورد شئ root به آن توجه شود این است که برای فراخوانی متدها یا استفاده از خصیصه‌های آن، نمی‌توان مستقیماً از کلمه root استفاده نمود، بلکه باید صراحتاً نوع آن در پرانتز ذکر گردد(انتصاب نوع پویا).

مثال 1: دستور اول منجر به بروز خطا می‌گردد، اما دستورات بعدی به درستی اجرا خواهند شد.

root.addChild(sh);     //error

Object(root).addChild(sh);
MovieClip(root).addChild(sh);
DisplayObjectContainer(root).addChild(sh);

مثال2 : تفاوت شئ root و stage:

trace(stage is Object, root is Object);		
// Output: true    true
trace(stage is MovieClip, root is MovieClip);		
// Output: false  true
trace(stage is Sprite, root is Sprite);			
// Output: false  true
trace(stage is DisplayObject, root is DisplayObject);	
// Output: true    true
trace(stage is DisplayObjectContainer, root is DisplayObjectContainer);	
// Output: true   true

دستور is در مثال بالا، نوعی عبارت منطقی به وجود آورده که تعلق یک شئ را به یک کلاس والد، بررسی می‌نماید.

Print this pageEmail this to someoneShare on Google+Share on FacebookShare on LinkedInTweet about this on TwitterShare on RedditShare on TumblrShare on StumbleUponPin on Pinterest