ActionScript3.0自学教程
自学ActionScript3.0,本身就是一件不容易的事情,如果不好好打好基础的话是不行的。下面是阳光网小编给大家整理的ActionScript3.0自学教程,供大家参阅!
ActionScript3.0自学教程:使用数组和对象处理数据
12.1 使用Array类
12.1.1 创建数组
var sampleArray:Array=new Array();
12.1.2 向数组添加元素
数组的索引元素(指数)是按照整数排序的值序列。在数组中可以通过指定索引位置存储和检索索引元素。使用Array类的toString()方法将所有元素使用逗号分隔开显示。
多数编程语言只允许在一个数组中存储同一类型的数据。而as允许一个数组中存储多种类型的对象。
12.1.3 构造数组的快捷方法
var carList:Array=new Array('he','he1');
var carList:Array=['he','he1'](数组字面量(array literal))
12.2 操作数组
12.2.1 向数组添加元素或从数组中移除元素
Array类有3个方法用于向数组添加元素:
push() 向数组的末尾添加元素
unshift() 向数组的开始位置添加元素(在0位置)
splice() 通过指定数组的一个索引删除或者插入另一个元素。splice() 需要3个参数:新元素添加的索引位置,需要删除的元素(0代表没有),以及想要添加的元素。
carList.splice(1,0,"hello","world");
12.2.3 从数组中移除或返回元素
每个用于删除的方法在有需要的情况下,可以在将元素丢弃之前返回元素的值。
pop() 从数组删除元素并返回最后的元素
shift() 从数组删除并返回第一个元素
slice() 通过指定的索引位置从数组删除并返回元素。slice()有两个参数:起始返回元素的索引位置和结束返回元素的索引位置。
如果没有指定slice()方法的第二个参数,将返回从起始参数之后的'所有元素。
将第一个参数值指定为负数则意味着,将数组末尾的指定元素个数向前切割。
12.2.4 遍历数组
for..each 遍历用于一个数组中的所有元素。
forEach()调用的函数从调用的方法处接受3个参数
elements:* 在循环中当前索引位置元素的值
index:int 在循环中当前索引元素的索引位置
arrary:Array forEach()方法的数组
arrayName.forEach(arrayFunction);
function arrayFunction(element:*,index:int,array:Array):void{
}
12.3 Object类和关联数组
数组适用于存储列式的数据,最佳的做法是使用一致的分类或类型以保持数组信息的一致性。
使用Object类的基本对象和关联数组为每一项创建高级的数据结构,用于分类和存储大量的信息。
12.3.1 Object类
Object类是所有对象的基础。之所以要为数据结构定义对象时因为将其作为信息的数据桶,然后你可以为自定义对象设置属性。
var obj:Object=new Object();
obj.firstName="tony";
var obj:Object=[firstName:"tony",lastName:"alva"];(对象字面量)
要检索对象的属性,只要直接调用对象的名称跟上属性名即可。
12.3.2 数组存取
使用数组的存取运算符动态设置和检索对象属性的值。使用数组存取副可以与使用对象的属性一样获取存储在变量中的值。
var newStater:String ="firstName"
var obj:Object = { firstName:"tony" }
trace(obj[newStater]);
同样,也可以使用数组存取符设置和检索对象的属性
var obj:Object = new Object();
obj["stater" + 1] = "tony";
trace(obj[stater1])
最后,数据存取符允许向数组对象添加属性并向关联数组一样使用属性
var arr:Array = new Array();
arr["stater"] = "tony";
trace(arr["stater"])
12.3.3 关联数组
使用Objec类的关联数组,便可以存储含有多个属性的项目。当将一个属性对象传给关联数组对象时,并没有创建一个对象。同时,可以使用花括号并给属性对象设置索引,而不再需要其他对象。
var nameList:Object = new Object();
nameList.skater1 = { firstName:"tony", lastName:'Alva', age:'41' }
nameList.skater2 = { firstName:'John', lastName:'Chen', age:'42' }
for each(var prop:String in nameList) {
trace(prop.firstName);
trace(prop.lastName)
}
流程控制:循环和条件。
条件语句:if…else,if…else if,switch
循环语句:for,
for…in 对象、数组
for each…in XML、对象、数组
while
do…while
ActionScript3.0自学教程:创建条件语句
13.1条件语句
在as中,最基本的条件语句是if[...else if][...else]
13.1.1 关系和等于运算符
> < == >= <= !=
13.1.2 在条件语句中检查一个布尔类型的值
13.1.3 检查多个条件
&& ||
13.1.4 基于对象的关系运算符
条件逻辑也可用于验证一个变量的类型或者对象的类。要实现这些功能使用的是用于获取变量类型的typeof运算符以及用于检车类实例的is运算符。
13.1.5 使用一个事件处理器检查多种事件类型
在一个对象中可以分发多种事件和事件类,并且多个对象也可分发同样的事件。
如果你在一个事件处理器中使用条件逻辑,就可以处理从一个或多个对象分发的多种事件类和事件类型。每一个事件处理器有一个从事件分发者传过来的事件对象。所有事件对象有一个属性type。使用条件逻辑,就可以区分不同的事件类型,并且在一个事件处理器中处理他们。用一个方法将所有的事件处理器函数封装起来,就可以将代码简化并且使得效率最高。
if(e.type==MouseEvent.MOUSE_OVER){
//Do something
}
13.2 使用switch语句检查条件
ActionScript3.0自学教程:遍历和重复
循环逻辑由遍历和重复组成。循环是数据结构中用于计数(遍历)的控制结构。可以使用循环来检查一张图片的所有像素数据。
14.1 for循环语句
14.1.1 使用for循环遍历数组元素
使用for循环的关键是利用i值的变化。比如,可以使用i值的变化遍历数组中已编号的元素
var numbers:Array = ["zero", "two", "three"];
var arraryLength:int = numbers.length;
for (var i:int = 0; i < arraryLength; i++) {
trace(numbers[i]);
}
14.1.2 死循环
14.2 使用关联数组建立动态菜单
14.3 遍历对象属性
14.3.1 使用for...in循环获取对象的属性
for...in循环通过获取元素或属性的引用进行遍历数组元素和对象属性。
14.3.2 for each...in循环获取对象的属性
for each...in循环存储了引用的属性或者元素的实际值,而不仅仅是元素或属性的引用。
var employeeInfo:Object = new Object();
employeeInfo.name = 'Bob Smith';
employeeInfo.age = '36'
employeeInfo.id = 90201;
for each(var prop in employeeInfo) {
trace(prop)
}
14.4 whiel和do..while循环语句
【ActionScript3.0自学教程】相关文章: