ActionScript它是一种极其强大的面向对象语言,它的作用如同JavaScript,更加丰富MXML应用
AS语法笔记
1、注释 行内注释(代码//),多行注释(/* 代码 */)
2、AS一种强类型语言,严格的区分大小写的
3、数据类型int与Number区别,这两者区别不大,int类型不用处理小数精度,故一般情况循环记数器中声明为int类型,但在其它情况用Number,这是因为在Flash Player内部是用Number存储所有数值数据。
4.循环
1)for(初始值:条件:递增)
2)for(属性名in数组/对象) 这里循环的是数组或对象的索引值或Key值
3)foreach(项in数组/对象) 这里循环的项就是数组或对象本身的项
5.数组
1)声明方式
第一种正常的声明
var myArray:Array = new Array("Math","English","Chinese");
第二种简单声明
var myArray:Array = ["Math","English","Chinese"];
2)数组类型
索引数组:即用数字来调用数组中的项其索引从0开始
关联数组:即用Key值调用数组中的项
var myKeyArray:Array = new Array(3);
myKeyArray["Ma"] = "Math";
myKeyArray["En"] = "English";
myKeyArray["Ch"] = "Chinese";
3)数组常用方法
push():将项添加到数组末尾
unshift():将项添加到数组开头
pop():删除数组末尾的项
shift():删除数组开头的项
splice(): myArray.splice(1,0,"Music","Paint");
第一参数是,从哪个索引位置开始,默认为0
第二参数是,要从索引后删除项的个数,如果为0则,表示不删除
后面的参数:则是从索引后,要增加的项
6、函数,类,包
我们一般函数都在在<mx:Script/>标签内但如果我们要将自写的函数单独出来,则需要用到包,或者调用SDK中的各种类时,也需要引用SDK中的包
单独的Demo.Demo1Class文件
{
public class Demo1Class //这个是包的类
{
//构造函数
public function Demo1Class()
{
}
//Demo1Class类的函数或属性
public function Init():Array
{
var list1Array:Array = new Array();
list1Array.push( " Math " );
list1Array.unshift( " English " );
list1Array.unshift( " Chinese " );
return list1Array ;
// var list2Array:Array = new Array("74","86","91");
}
private function CirCleInit():Array
{
var list2Array:Array = new Array();
var source :Number = 70 ;
for ( var i:Number = 0 ;i < 3 ;i ++ )
{
source += 10 ;
list2Array.push(source);
}
return list2Array
}
}
}
<! [CDATA[
import Demo.Demo1Class; //引用包中的类
var demoFunction:Demo1Class = new Demo1Class(); //实例化类
private function InitList(): void
{
var list1Array:Array = demoFunction.Init(); //调用类中的函数(这里函数要设成公有类型才能调用)
list1.dataProvider = list1Array ;
}
]] >
< / mx:Script>
1、通过MXML进行绑定 通过{}进行绑定
<mx:TextInput id="myTextinput"/>
<mx:Text id="myText" text="{myTextinput.test}"
这就实现了TextInput与Text的数据绑定当TextInput变化时,Text也会随着发生变化
2、绑定AS自定义的变量如字符串,数组,XML等,通过关键字bindable进行绑定
<mx:Script>
[bindable] public var s :string // 对变量进行绑定</mx:Script>
<mx:Text id="myText" text="{s}"