您的位置:首页 > 运维架构 > 网站架构

Flash互动网站设计学习-Actionscript3.0基础

2012-09-10 13:35 351 查看
Actionscript3.0用于网站的交互和数据处理。

当面临一堆数据时,我们很难分清,我们可以定义变量来给这些数据一一取名。

Var tempText:String="abc";

Trace(tempText);

控制台会正确的输出abc

Var temText;

trace(temText);

这样输出的结果会是undefined,表示没有给变量赋值并没有找到数据类型。

Var temText:String;

trace(temText);

这样输出的结果会是null,表示没有给变量赋值。

数据类型:
在Actionscript3.0中,数据类型分为基元数据类型和复杂数据类型。
基元数据类型:Boolean、int、NULL、Number(主要用于浮点数)、String、uint(非负整数)和void等
复杂数据类型:Object、Array、Date、Error、Function、RegExp、XML、XMLLIST等

看下面的例子:

Var A:uint=100;

Var B:uint=A;

B=500;

trace("A的值:"+A);

trace("B的值:"+B);

控制台输出结果:
A的值:100
B的值:500
上面是基础数据类型的,发现最后输出的A、B值不同,好,下面看复杂数据类型的:

Var _a:Array=new Array(1,2,3);

Var _b:Array=_a;

_b.push(100);

trace("_a的内容为:"+_a);

trace("_b的内容为:"+_b);

输出的结果是:
_a的内容为:1,2,3,100
_b的内容为:1,2,3,100
发现两者的结果是一样。这是因为基础数据类型可以被看做是一个值,每个值都作为一个不同的对象放在内存中,而复杂数据类型的变量名值是给这个数据提供一个引用的方式。也就是说如果将一个数组的变量名作为值赋予另一个数组,则会发生两个变量同时对应一个数组的情况。我的猜想是基础数据类型每个值都开辟了一个内存空间,而复杂数据类型属于引用类型,当一个变量名作为值赋予另一个引用类型时,两者指向同一个内存空间。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Actionscript3.0