·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

as3和as2的各项变量介绍

时间:2011-10-10 09:06CuPlayer.com
变量在程序编写中用的最广,学起来也很简单,现在就目前明白的一些内容做一个整理,分享给大家,基元数据类型(非引用):Boolean,int,Number,String,unit

变量在程序编写中用的最广,学起来也很简单,现在就目前明白的一些内容做一个整理,分享给大家.
基元数据类型(非引用):Boolean,int,Number,String,unit
复杂的数据类型(引用):Array,Dae,Error,Function,RegExp,XML,XMLList

变量声明的语法

var 变量名:数据类型; //没有默认值的时候,推荐大家用这样方式声明
var 变量名:数据类型 = 值; //如果有默认值就这样命名
var 变量名A:数据类型,变量名B:数据类型,变量名C:数据类型;//这个很少用到.
var 变量名A:数据类型 = 5,变量名B:数据类型 = 6;//这个很少用到.
var 变量名; //未声明类型,默认:undefined
var 变量名*; //未声明类型,默认:undefined

常量声明的语法

const 变量名:数据类型 = 值; //如果有默认值就这样命名

变量名的命名规则
尽量使用英文来命名,采用骆驼式命名法(SetName,GetName,PutName……),尽量避免出现数字编号

基元数据类型(非引用):Boolean,int,Number,String,unit

//非引用就是说,变量的存储并不是指定在一个标号的空间,而是自己本身...听到好绕嘴
var a:int = 1;
var b:int = a;
b = 2;
trace(a); //1
trace(b); //2

数字的选择:int,uint,Number

var a:int; //-2,147,483,648 到 2,147,483,647 有符号的32位整型数(占用4字节)默认:0
var b:uint; //0 到 4,294,967,295(颜色) 无符号的32位整型数(占用4字节)默认:0
var c:Number; //64位浮点值,(小数) (占用8字节)默认:NaN

var as2_a:Number; //As2里只有Number这样一个

trace(0/0);//null 无
trace(1/0);;//Infinity 表示无穷大

注意:小数相加不一定得到整数

var a:Number = 1.0;
var b:Number = 0;
for(var i:int = 0; i < 10; i++) {
b += 0.1;
}
trace(b); //0.9999999999999999
trace(a == b); //false
trace(Math.round(b)); //1 这样就可以了
trace(int(b)); //0 也不要这么写

注意:不要让数值差距过大的浮点数相加减

var a:Number = 100000000;
var b:Number = 0.000000001;
trace(a + b); //100000000
//不过这样的应用碰上的几率很小知道就好.

Boolean 布尔值就两个值true(真),false(假)
AS2和AS3的区别是,AS2默认为undefined,AS3默认false;这里看好像AS3感觉更加正常些.

String 字符串

var str:String; //未定义,默认为null

var str:String = ""; //默认为空
var str:String = new String();//默认为空

var str:String = "abc"; //默认"abc"
var str:String = new String("abc"); //默认"abc"

//特殊字符串
"\n"//换行
"\r"//回车
"\t"//制表符
"\\"//就是 \
"\""//就是",'号也可以按这样方式

//判断String是否能转换为数值
!(Number("String"))

复杂的数据类型(引用):Array,Dae,Error,Function,RegExp,XML,XMLList等

数组:Array

var arr:Array; //默认null

var arr:Array = []; //默认空白
var arr:Array = new Array(); //默认空白

var arr:Array = [1, 2, 3, 4];
var arr:Array = new Array(1, 2, 3, 4);

var arr:Array = new Array(10); //长度为10的空数组

//数组的访问
arr[0];//0为数组的第一位,依次类推
//遍历数组
for(var i:int = 0; i < arr.length; i++) {
trace(arr[i]);
}

对象:Object,由于Flash里所有的对象都是Object,使用一个Swf其实就是一个大大的Object.

var obj:Object; //默认值为null

var obj:Object = new Object();
var obj:Object = { };

obj.hello = function():void{
trace("hello,Fun学网!");
}
obj.hello();
//当然也可以添加类,数组等等.

//使用hasOwnProperty检测属性是否存在
//例如取obj对象的the_name属性,没定义取会报错,这样就不会了
var the_name:String = new String();
if(obj.hasOwnProperty("the_name")){
the_name = String(obj.the_name);
}

typeof 返回对象的类型

对象类型 返回结果
Boolean boolean
int number
uint number
Number number
String string
Array object
Object object
XML xml
XMLList xml
Function function

is,as用法,is判断是否属于一种类型,返回布尔值,as返回这个对象,或null

trace(9 is Number);//true
trace(9 is Array);//false
trace(9 as Number);//9
trace(9 as Array);//null

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器