(转)Flash AS3.0中is,as运算符
2012-05-10 00:42
519 查看
(1) is运算符
在AS3.0新增加的is运算符,主要功能是判断一个变量或者等式是不是等于给定的数据类型,在以前的版本中,有instanceof来实现相同的功能。
但是is 运算符可以帮助我们确定数据类型,还可以判断类的继承关系,包括对于接口的继承执行。
可以看如下实例:
var mySprite:Sprite = new Sprite();
trace(mySprite is Sprite); //output:true
trace(mySprite is DisplayObject); //output:true
trace(mySprite is IEventDispatcher); //output:true
如果将is用instanceof来代替的,那么执行情况将如下:
trace(mySprite instanceof Sprite); //output:true
trace(mySprite instanceof DisplayObject); //output:true
trace(mySprite instanceof IEventDispatcher); //output:false 主要的区别在于对于接口的判断,在AS3.0中, Sprite继承自EventDispatcher类,而该类正好执行了IEventDispatcher接口。
(2)as运算符
AS3.0中新增加的运算符,也是用来判断一个给定的表达式是否符合所给定的数据类型,与is类似,但是不同之处在于返回值。as返回用表达式的结果代替了is返回的true,用null代替了is返回的false.
例如:
trace(mySprite as Sprite); //output: [object Sprite]
trace(mySprite as DisplayObject); //output: [object Sprite]
trace(mySprite as IEventDispatcher); //output: [object Sprite]
trace(mySprite as Number); //output: null
在AS3.0新增加的is运算符,主要功能是判断一个变量或者等式是不是等于给定的数据类型,在以前的版本中,有instanceof来实现相同的功能。
但是is 运算符可以帮助我们确定数据类型,还可以判断类的继承关系,包括对于接口的继承执行。
可以看如下实例:
var mySprite:Sprite = new Sprite();
trace(mySprite is Sprite); //output:true
trace(mySprite is DisplayObject); //output:true
trace(mySprite is IEventDispatcher); //output:true
如果将is用instanceof来代替的,那么执行情况将如下:
trace(mySprite instanceof Sprite); //output:true
trace(mySprite instanceof DisplayObject); //output:true
trace(mySprite instanceof IEventDispatcher); //output:false 主要的区别在于对于接口的判断,在AS3.0中, Sprite继承自EventDispatcher类,而该类正好执行了IEventDispatcher接口。
(2)as运算符
AS3.0中新增加的运算符,也是用来判断一个给定的表达式是否符合所给定的数据类型,与is类似,但是不同之处在于返回值。as返回用表达式的结果代替了is返回的true,用null代替了is返回的false.
例如:
trace(mySprite as Sprite); //output: [object Sprite]
trace(mySprite as DisplayObject); //output: [object Sprite]
trace(mySprite as IEventDispatcher); //output: [object Sprite]
trace(mySprite as Number); //output: null
相关文章推荐
- C# AS OR IS ?运算符
- C#is 和as运算符
- 运算符 AS和IS 的区别
- is 与 as 运算符举例
- [C#] as 和 is 运算符以及安全的类型强制转换
- 类型转换(C# AS OR IS ?运算符)
- C#中的转换运算符as和is
- [C#] as 和 is 运算符以及安全的类型强制转换
- ⊙ is 和 as 运算符的原理
- c#的as,is 运算符
- 使用反射查询类的方法和字段以及使用IS运算符号类转换和AS运算符
- C#的IS和AS运算符区别
- AS3.0中is,as运算符
- 类库、委托、is和as运算符
- 重读C#高级编程之几个运算符在实际中的应用:is,as,sizeof,typeof,GetType,??
- C# checked 检查整型数据运算溢出 as,is运算符 可空类型空结合
- C#继承(五)——is和as运算符
- is 和 as 运算符的作用与区别 c#
- as和is运算符
- C#—类库、委托、is和as运算符、泛型集合