Luc*_*hez 5 casting boolean object actionscript-3
当你将任何对象转换为布尔值时,true如果对象不是null,false则得到,否则,我喜欢为某些对象更改此行为.我希望有些物体false即使不存在也会返回null
我知道在ActionScript 3.0中我们可以使用改变对象的一些默认行为Proxy.我们可以做同样的Boolean(object)或object as Boolean?以及如何做到这一点?
我想在下一个想法之后问这个:
我有这个代码:
if (someObject)
someObject.DoSomething();
Run Code Online (Sandbox Code Playgroud)
这意味着DoSomething只有在someObject没有被调用的情况下null,这只是因为背后的"真实"代码是这样的:
if (Boolean(someObject) == true)
someObject.DoSomething();
Run Code Online (Sandbox Code Playgroud)
并且有效,因为任何对象都自动转换为布尔值,结果是true,但如果引用指向null结果是false.
我想知道我是否可以改变这种行为而不添加像这样的新功能isTrue(someObject).
在此先感谢,对不起我的英语不好.
不,CustomClass(object) 和as是强制转换运算符,两者的行为都是由语言定义的。而且 Boolean(object) 是,afaik,具有语言定义行为的全局函数(并且没有函数重载。)在 ActionScript 3.0 中没有用于类型转换的类级运算符,您必须为 true/false 实现一些属性检查。
| 归档时间: |
|
| 查看次数: |
1524 次 |
| 最近记录: |