Flash AS3.0中is,as运算符

运算

(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 

时间: 2024-10-02 16:13:42

Flash AS3.0中is,as运算符的相关文章

Flash AS3.0中uint数据类型做循环判断应注意

数据|数据类型|循环 在AS3.0中增加了新的数据类型uint,其表示正整数.我们可以先看一下下面的例子: for(var i:uint = 5;i>=0;i--)  {  trace("test");  }  运行该代码将会产生一个运行错误:"Error: Error #1502: 脚本的执行时间已经超过了 15 秒的默认超时设置.".如果我们将i声明成int或者Number将可以顺利完成任务.这个主要是因为我们声明的i为uint,它的有效的范围为0~429

flash as3.0中鼠标事件MOUSE_MOVE, MOUSE_DOWN

flash MOUSE_OVER, MOUSE_MOVE, MOUSE_DOWN, MOUSE_UP, MOUSE_OUT, MOUSE_WHEEL和MOUSE_LEAVE flash.events.MouseEvent类,最后一个MOUSE_LEAVE却是来自flash.events.Event,在导入类包的时候一定要注意这个问题,因为我在这点上就花了很长时间调试,才得发现问题所在. MOUSE_OVER - 鼠标移动到目标对象之上时触发, 可以用于模拟按钮的mouse over效果; MOU

Flash AS3.0实现逼真喷泉效果

核心提示:Flash AS3.0实现逼真喷泉效果教程. 我们将介绍利用速度向量和重置对象的技巧来实现喷泉效果.所谓向量就是有方向的量.比如一辆车从东向西以80公里每小时的速度行驶,那么我们就可以得到汽车的速度向量,它包括两个元素:速度,每小时80公里,方向,由东向西. 下面我们来分析一下喷泉是怎样形成的? 喷泉是若干个水珠向上喷射,然后又受重力影响掉回地面.这个过程的速度向量有哪些,具体又是怎么的呢?很容易发现至少的两个力,一个是使水珠向上喷射的外力,一个是使水珠掉回地面的重力. 外力的速度向量

Flash AS3.0菜鸟学飞教程代码的位置

早期版本的ActionScript代码可以写在帧.按钮.影片剪辑.as文件等位置,而Flash AS3.0代码的位置发生了重大的改变,只能写在帧及as文件中. 虽然Flash AS3.0支持把代码写在时间轴中,但在实际应用中,如果把很多的代码放在时间轴中,会导致代码很难管理.或者说,用类来组织大量的代码更为合适,因为类代码都是放在as文件中的. 除了把代码放在时间轴上,还可以把代码放在外部文件中,比如,放在服务器的txt文件中,然后把这些外部数据加载到fla文件里. 外部文件代码 以往都是在时间

Flash AS3.0构建简单的声音可视化程序(波型图)

本例为Flash AS3.0实例教程,在教程中我们将学习运用SoundMixer.computeSpectrum() 方法来构建简单的声音可视化程序(即波形图),希望能给朋友们带来帮助~~ AS3.0构建简单的声音可视化程序(波型图): 开发"> 使用 SoundMixer.computeSpectrum() 方法来显示声音波形图: import flash.display.Graphics; import flash.events.Event; import flash.media.So

Flash AS3.0 强大的事件机制

ActionScript 3.0系列教程(4):爽快使用XML ActionScript 3.0系列教程(5):强大的事件机制 回顾和比较 AS1.0玩家最爱用onClipEvent(), on(),又方便又直接.缺点在于逻辑分散到了各个舞台元件中,难以管理和维护.更加别说代码重用了.别跟俺说可以Copy, Paste,这不叫重用,这叫低级. AS2.0中,增加了一些事件处理机制: (1)回调函数: onLoad, onComplete等.相信兄弟们最熟悉的应该就是XML.onload回调函数了

Flash AS3.0 爽快使用XML

xml ActionScript 3.0系列教程(3):Document Class特色为我们带来了什么? ActionScript 3.0系列教程(4):爽快使用XML 为什么放弃AS2.0选择AS3.0?如果只允许我说三个理由.那么AS3.0对XML的近乎完美的支持绝对是其中一个. 简单说说AS3.0中对于XML支持的不同吧: .AS2.0对XML的支持勉勉强强,将就着可以用.而AS3.0中对XML的支持是全方位的,极其强大和灵活的. AS2.0对XML的支持不是内建的(build-in),

Flash AS3.0的类及绑定

作者的blog: www.kingda.org ActionScript 3.0系列教程(1):与Flash9先来一次亲密接触! ActionScript 3.0系列教程(2):AS3.0的类及绑定 这次我们开始介绍AS3.0中的类如何和库中元件绑定,和特殊的Document Class设计. 总共4步: 1.建一个标准的AS3.0类 (暂命名为KingdaMC,多么伟大的名字啊,简称"有名")2.新建一个元件,并设置它的Linkage和上面的类绑定.3.在时间轴上写代码,用AS3.0

flash as3.0教程专题

积少成多 Flash(ActionScript 3.0 & Flex 3.0) 系列文章索引 积少成多Flash(7) - ActionScript 3.0交互之鼠标事件和键盘事件 积少成多Flash(6) - ActionScript 3.0绘图之图形和转换 积少成多Flash(5) - ActionScript 3.0 实例之闹钟(自定义事件,画 积少成多Flash(4) - ActionScript 3.0 实例之Hello World,时钟, 积少成多Flash(1) - ActionS