2009年5月20日
FLEX学习笔记(一)————ACTIONSCRIPT3.0基础【3】
1、数据类型说明:
数据类型转换:隐式转换和显式转换
显示转换在严格模式下进行编译时会非常有用
语法:
2、常数:const语句,只能为常量赋值一次,而且必须在常量声明的附近赋值
如果将常量声明为类成员,则只能在声明时或其构造方法中赋值
注:E4X规范:ECMAScript for XML 是一种扩展了ECMAscript(ActionScript,DMDScript,JavaScript,
JScript等)的编程语言,它增加了对XML的内在支持,他的目的是在访问XML时,提供一种直观,语法简洁的
DOM接口。
3、运算符:(与JAVA相比较,特殊的运算符)
delete 删除属性
typeof 返回类型信息
>>> 按位无符号右移
=== 全等
!== 不全等
4、条件语句:(与JAVA类似)
if ... else
if ... else if ...
switch ... case ... (break) ... default ....
5、循环语句:
for for in for each in
与JAVA相同 可以得到key和value 只能得到value
6、函数:方法和函数闭包
将函数定义为方法或是函数闭包取决于定义函数的上下文
如果您将其定义为类定义的一部分或者将它加到对象的实例,则该函数成为方法
如果您将其以其他任何方式定义,则称为闭包
定义您自己的函数:函数语句和函数表达式两种方式
采用静态或是严格模式下:函数语句定义函数
特定需求:函数表达式方式定义函数(也称为函数字面值或者匿名函数)
例:函数语句:function myFun(aParam : String){ ... }
函数表达式:var myFun:Function = function(aParam : String){ ... };
除非特殊情况下使用函数表达式,否则应该使用函数语句定义函数
在两种编译模式下,都可以使用“.”语法来调用函数,但对于函数表达式却不一定成立
函数表达式更适合与关注运行时行为或者动态行为的编程,也可以使用myClass["myFun"]();的方式调用函数
函数语句和函数表达式的两个细微区别:
【1】体现在内存管理和垃圾回收方面,这是由于函数表达式不像对象那样独立存在
【2】函数语句存在于定义他们的整个作用域(当然包括之前出现的调用语句中),与之相反,函数表达式只是为后
续的语句定义的
7、函数参数:
AS3.0新增了声明默认值参数的功能,所有默认值的参数都必须放到必须参数的末尾,指定默认值的值必须是编译
时常量
8、arguments对象:(相当于JAVA的main方法的args参数)
将参数传入给某个函数是,可以使用arguments对象来访问有关传递给函数的参数的信息
注:arguments.callee对函数本身的引用,该引用可以应用于递归的调用函数表达式
如果传入的参数名为arguments或者是...(rest)的形式则arguments对象不可用
9、...(rest) 参数:(相当于JAVA5.0新特性中的 ... args参数功能)
10、函数作用对象:
作为参数传递给另一个函数的函数是按引用(而不是值)传递的,在某个函数作为参数传递时,只能使用标识
符,而不能有()在其后面
如:将clickListener()函数作为参数传给addEventListener()方法
addEventListener(MouseEvent.CLICK,clickListener);