Actionscript 3 As3是一个不同的if案例

Actionscript 3 As3是一个不同的if案例,actionscript-3,Actionscript 3,当我使用以下命令时: var child:DisplayObjectContainer = dso.getChildAt( dso.numChildren -1 ) as DisplayObjectContainer; trace(child); // [object MenuView] 我现在的问题是,如果我想用一个if的例子,看看它真的是MenuView。。。比如: if( child == 'MenuView'){... 我不知道如何将这样的if case设置为work:S您可以使用操

当我使用以下命令时:

var child:DisplayObjectContainer = dso.getChildAt( dso.numChildren -1 ) as DisplayObjectContainer;
trace(child); // [object MenuView]
我现在的问题是,如果我想用一个if的例子,看看它真的是MenuView。。。比如:

if( child == 'MenuView'){...
我不知道如何将这样的if case设置为work:S

您可以使用操作符:

if( child is MenuView){
更新:如果在您的情况下无法导入
菜单视图
类,则可以尝试使用全局函数:

//if 'MenuView' class does not have 'namespace'
if( describeType(child).@name == "MenuView" ){ 

//if 'MenuView' class does have 'namespace'
if( describeType(child).@name.indexOf('MenuView') !== -1 ){ 
您可以使用运算符:

if( child is MenuView){
更新:如果在您的情况下无法导入
菜单视图
类,则可以尝试使用全局函数:

//if 'MenuView' class does not have 'namespace'
if( describeType(child).@name == "MenuView" ){ 

//if 'MenuView' class does have 'namespace'
if( describeType(child).@name.indexOf('MenuView') !== -1 ){ 

已经测试过了,但是由于我无法从任何地方访问MenuView本身,所以我得到了1120个错误:访问未定义的属性MenuView@DanelK你需要导入
MenuView
类。这就是问题所在,我无法访问它,因为它在另一个SWF中使用,我用Loader加载到我的SWF中。或者我不知道我怎么能从加载的swf中得到它:哦,最重要的是。。。你的更新成功了。虽然我必须添加整个类路径到它!塔克斯!您也可以只使用已经测试过的GetQualifiedClassName,但由于我无法从任何地方访问MenuView本身,因此我得到1120个错误:访问undefined属性MenuView@DanelK您需要导入
MenuView
class。这就是问题所在,我没有访问它,因为它是在另一个SWF的im加载到我的装载机使用。或者我不知道我怎么能从加载的swf中得到它:哦,最重要的是。。。你的更新成功了。虽然我必须添加整个类路径到它!塔克斯!您也可以只使用getQualifiedClassName