root、stage和this解析

stage:显示对象的舞台。Flash 运行时应用程序仅包含一个 Stage 对象。例如,您可以创建多个显示对象并加载到显示列表中,每个显示对象的
stage 属性是指相同的 Stage 对象(即使显示对象属于已加载的 SWF 文件)。

root:对于加载的 SWF 文件中的显示对象,root 属性是此 SWF 文件所表示的显示列表树结构部分中的顶级显示对象。对于代表已加载图像文件的位图对象,root 属性就是位图对象本身。对于第一个加载的 SWF 文件的主类的实例,root 属性就是显示对象本身。Stage 对象的 root 属性是 Stage 对象本身。对于任何未添加到显示列表的显示对象,root 属性设置为 null,除非它已添加到符合以下条件的显示对象容器:不在显示列表中,但属于已加载 SWF 文件中顶级显示对象的子级。

例如,如果您通过调用 Sprite() 构造函数方法创建新的 Sprite 对象,则其 root 属性将为 null,除非您将其添加到显示列表中(或添加到不在显示列表中但属于 SWF 文件中顶级显示对象的子级的显示对象容器中)。

对于加载的 SWF 文件,即使用于加载文件的 Loader 对象未在显示列表中,SWF 文件中的顶级显示对象也会为其本身设置 root 属性。在 Loader 对象添加为对其设置 root 属性的显示对象的子级前,它不会设置自己的 root 属性。

this:this是所有OOP语言都具有特征。是指向自身的引用。



如图所示:stage、root 是所有显示对象都有的属性。

stage属性指向显示层级的第一级也就是可以理解为flash播放器舞台

root属性指向显示层级的第二级也就是文档类实例

原文地址:https://www.cnblogs.com/xinqingHappy/p/2937917.html