Sim*_*ver 22 actionscript typeof
我想在Actionscript中这样做:
typeof(control1) != typeof(control2)
Run Code Online (Sandbox Code Playgroud)
测试两个对象是否属于同一类型.这在C#中可以正常工作,但在Actionscript中它没有.事实上,它返回'object'两个typeof()表达式,因为这就是Actionscript的工作方式.
我似乎无法通过查看调试器或typeof()在Actionscript 中描述的页面找到替代方案.
有没有办法获得实际的运行时类型?
小智 19
最好的方法是使用flash.utils.getQualifiedClassName().此外,您可以使用flash.utils.describeType()获取XML文档来描述有关该类的更多信息.
小智 17
Actionscript 3有一个is运算符,可用于比较对象.请考虑以下代码:
var mySprite:Sprite = new Sprite();
var myMovie:MovieClip = new MovieClip();
trace(mySprite is Sprite);
trace(myMovie is MovieClip);
trace(mySprite is MovieClip);
trace(myMovie is Sprite);
Run Code Online (Sandbox Code Playgroud)
这将产生以下输出:
true
true
false
false
Run Code Online (Sandbox Code Playgroud)
这适用于内置类和您自己创建的类.的动作2当量的就是操作者的instanceof.