您的位置:首页 > 其它

is 和 as的区别

2009-05-06 11:10 183 查看
is返回true或false计算对象是否与特定数据类型、类或接口兼容。使用
is
运算符(而非
instanceof
运算符)进行类型比较。还可以使用
is

运算符来检查对象是否实现某个接口。结果
Boolean
— 如果
expression1
与在
expression2
中指定的数据类型、类或接口兼容,则为
true
,否则为
false
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


as运算符
用法
[code]expression as datatype
语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9
计算第一个操作数指定的表达式是否为第二个操作数指定的数据类型的成员。如果第一个操作数是该数据类型的成员,则结果为第一个操作数。否则,结果为
null
值。第二个操作数所用表达式的计算结果必须为数据类型。操作数
expression:*
— 要针对指定的数据类型进行检查的值。
datatype:Class
— 用于计算
expression

操作数的数据类型。不能使用特殊的 * 类(即无类型)。
结果
Object
— 如果
expression

是在
datatype
中指定的数据类型的成员,则结果为
expression
。否则,结果为
null
值。
示例如何使用示例下例创建一个名为
myArray
的简单数组,并将
as

运算符用于各种数据类型。
public var myArray:Array = ["one", "two", "three"];
trace(myArray as Array);  // one,two,three
trace(myArray as Number); // null
trace(myArray as int);    // null
[/code]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: