• 《ActionScript 3殿堂之路》学习笔记(2)

    日期:2009.07.23 | 分类:ActionScript3 | 标签: ,

    三、ActionScript 3 流程控制

    1. 条件判断

    判断结果只有2种:true和false,AS3中允许表达式的值不是布尔值,如果一个条件表达式的值不是布尔值,会自动执行类型转换,转换成相应布尔值
    a) if-else
    b) if…else if…else

    2. 循环

    • a) while
    • b) do-while
    • c) for
    • d) for…in 和 for each…in
      for…in输出对象成员的名字(键)
      for. each…in输出对象成员的值
    • e) break 和 continue
      配合在循环加标签,可退出某个子或父循环

    3. switch

    跟其它语言一样,不加break的话,会继续执行语句

    四、 ActionScript 3 的函数

    1. 定义函数2种方法

    • 函数语句定义法 function xxx():int{}
    • 函数表达式定义法 var xxx:function = function():int{}

    区别在于语句定义法编译时会提升到最起码,而表达式定义法不会,如果定义之前执行不会成功,

    2. 参数

    AS3中如果参数是基元数据类型,可以看做是传值,如果不是基元数据类型,就是传引用,函数内部的操作将直接
    函数中传入的参数被保留在一个arguments数组对象,AS2可以无视函数定义传入任意多参数,AS3则不可以,但可以用新关键字…(rest)接受任意多参数,rest可以另外命名

    3. 函数本质

    ActionScrip 3 中,一切皆对象(Everything is an Object)。函数本身是Function类型的对象,一旦执行将建立一个特殊对象Active Object,该对象是不可访问的,同时每个函数都有一个内置的范围链(Scopes chain)。