ActionScript学习笔记
ActionScript学习笔记
ActionScript中预定义的数据类型:Boolean、int、Number、String、uint
其中,int、Number、uint是处理数字的。int用来处理整数,Number用来处理很长又有小数点的数字,uint处理很大的正整数。
复杂数据类型:Array、Date、Error、Function、RegExp、XML、XMLList
自定义类属于复杂数据类型。
publicclassAS_001extendsSprite{publicfunctionAS_001(){varv1:int=9;trace(v1);varv2:uint=10;//无符号数varv3:Boolean=true;varv4:Number=4.5;varv5:String="Helloworld";varv6:String='Helloworld!!!';varv7:*=3;//任意数据类型trace(v7);v7="你好";trace(v7);varv8;trace(v8);//undefinedvarv9:String;trace(v9);//nullvarv10:Array=[2,3,4,5];//数组trace(v10);varv11:Object={id:3,username:"admin",password:"admin"};trace(v11.username);}}
输出结果
9
3
你好
undefined
null
2,3,4,5
admin
publicfunctionmy_function(){varv1:Array=["a","b","c","d","e"];for(vari:Stringinv1){trace(i);trace(v1[i]);}foreach(varpropertyValue:Stringinv1){trace(propertyValue);}varv2:Object={id:1,name:"admin",age:22};for(variinv2){trace(i);trace(v2[i]);}foreach(varpropertyValue:Stringinv2){trace(propertyValue);}trace(v2["name"]);}publicfunctionmy_function1(){vartraceParameter:Function=function(aparam:String):void{trace(aparam);};traceParameter("hello");vartraceArray:Array=newArray();traceArray[0]=function(aParam:String):void{trace(aParam);};traceArray[0]("Hello");f("admin");f1("admin1","admin2");}publicfunctionf(name:String="zhangsan"):void{trace(name);//zhangsan是默认参数}publicfunctionf1(...args):void{trace(args.length);//可变参数}
ActionScript面向对象
新建ActionScript类Student.as
packagecom.umgsai.as3{publicclassStudent{privatevar_name:String="zhangsan";publicfunctionStudent(){}publicfunctionsetname(name:String):void{//set方法this._name=name;}publicfunctiongetname():String{//get方法returnthis._name;}}}
使用
vars:Student=newStudent();trace(s.name);//相当于调用functiongetname(),输出zhangsans.name="admin";//相当于调用functionsetname()trace(s.name);//输出admin
ActionScript动态类
新建Teacher类
packagecom.umgsai.as3{publicdynamicclassTeacher{publicfunctionTeacher(){}}}
使用
vart:Teacher=newTeacher();//Teacher类是动态类t.f=function(){//动态添加f函数trace("f");}t.f();deletet.f;//删除f函数//t.f();//此句会报错
ActionScript接口使用
IFlyable.as
packagecom.umgsai.as3{publicinterfaceIFlyable//接口一般以I开头{functionfly():void;//不写public之类的修饰符}}
实现接口
packagecom.umgsai.as3{publicclassTimplementsIFlyable{publicfunctionT(){}publicfunctionfly():void//实现接口方法{trace("fly");}}}
使用
vartt:IFlyable=newT();tt.fly();
ActionScript异常处理
try{thrownewEOFError("erroroccurs");}catch(error:Error){trace(error);}finally{trace("finnaly");}
值类型int例子
vara:int=3;varb:int=a;b=9;trace("a="+a);trace("b="+b);
执行结果:
a=3
b=9
引用类型例子。(类似C语言中的指针)
vara:Array=newArray(1,2,3);varb:Array=a;b[0]=4;trace("a:"+a);trace("b:"+b);
执行结果:
a:4,2,3
b:4,2,3
使用const声明常量
constfoo:int=100;//不可以改变foo的值
typeof、is、as
trace(typeof10);//Numbertrace(9isNumber);//true//as与is格式一致,内容不同。如果一个对象属于一种类型,那么as返回这个对象,否则返回nulltrace(9asNumber);//输出9trace(9asArray);//输出null
in关键字
vara:Array=["a","b","c"];trace(2ina);//true,数组a含有索引2trace(3ina);//false,数组a没有索引为3的元素varb:Object={ary:a,name:"OK"};trace("ary"inb);//true,b中有ary属性trace("name"inb);//true,b中有name属性varc:Dictionary=newDictionary();c[a]="avalue";c[b]="bvalue";trace(ainc);//truetrace(binc);//true
两种函数定义方法
privatefunctionfname():void{//函数语句定义法,推荐使用这种写法trace("Hello");}vartestAdd:Function=function(a:int,b:int):int{//函数表达式定义法returna+b;}
设置默认参数
publicfunctiontest(a:int=3,b:int=2,c:int=1):void{trace(a+b+c,a,b,c);trace("参数长度:"+arguments.length);}test();//6321全部使用默认值test(9);//12921使用后两个参数的默认值test(2,9);//12291使用最后一个参数的默认值test(1,2,3);//6123木有使用默认值
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。