Flex判断数据类型

 

这个用的还是挺多的,我自己详细总结一下吧。

主要有这么几种 as ,instanceof,is,typeof。 其中instanceof 在Flex4中已经弃用

 

as  计算第一个操作数指定的表达式是否是第二个操作数指定的数据类型的成员。

­如果第一个操作数是该数据类型的成员,则结果是第一个操作数。否则,结果是 null 值。

举例:public var myArray:Array = ["one", "two", "three"];
  
    trace(myArray as Array);  // one,two,three
   
trace(myArray as Number); // null
   trace(myArray as int);    // null


 

instanceof:计算表达式的原型链中是否包含 function 的原型对象。

当与类一起使用时,instanceof 运算符与 is 运算符类似,这是因为类的原型链中包含它的所有超类。但是,原型链中不包含接口,因此当与接口一起使用时,instanceof 运算符的计算结果将始终为 false,而 is 运算符的计算结果将为 true(如果对象属于实现指定接口的类)。

举例:var mySprite:Sprite = new Sprite();
   
trace(mySprite instanceof Sprite);        // true
   trace(mySprite instanceof DisplayObject); // true

 

is:计算对象是否与特定的数据类型、类或接口兼容。注意也可以使用 is 运算符检查对象是否实现了某个接口。

举例:import flash.display.*;
   
import flash.events.IEventDispatcher;

  
var mySprite:Sprite = new Sprite();
  
trace(mySprite is Sprite);           // true
  
trace(mySprite is DisplayObject);    // true
  trace(mySprite is IEventDispatcher); // true

typeof:计算 expression,并返回指定表达式的数据类型的字符串。此结果仅限于六个可能的字符串值:booleanfunctionnumberobjectstring xml

举例:trace(typeof Array); // object
   
trace(typeof Date);  // object
   
trace(typeof 3);     // number
  
    var a:String = "sample";
   
var b:String = new String("sample");
   
trace(typeof a); // string
   trace(typeof b); // string

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值