ActionScript3.0自學教程
自學ActionScript3.0,本身就是一件不容易的事情,如果不好好打好基礎(chǔ)的話是不行的。下面是陽光網(wǎng)小編給大家整理的ActionScript3.0自學教程,供大家參閱!
ActionScript3.0自學教程:使用數(shù)組和對象處理數(shù)據(jù)
12.1 使用Array類
12.1.1 創(chuàng)建數(shù)組
var sampleArray:Array=new Array();
12.1.2 向數(shù)組添加元素
數(shù)組的索引元素(指數(shù))是按照整數(shù)排序的值序列。在數(shù)組中可以通過指定索引位置存儲和檢索索引元素。使用Array類的toString()方法將所有元素使用逗號分隔開顯示。
多數(shù)編程語言只允許在一個數(shù)組中存儲同一類型的數(shù)據(jù)。而as允許一個數(shù)組中存儲多種類型的對象。
12.1.3 構(gòu)造數(shù)組的快捷方法
var carList:Array=new Array('he','he1');
var carList:Array=['he','he1'](數(shù)組字面量(array literal))
12.2 操作數(shù)組
12.2.1 向數(shù)組添加元素或從數(shù)組中移除元素
Array類有3個方法用于向數(shù)組添加元素:
push() 向數(shù)組的末尾添加元素
unshift() 向數(shù)組的開始位置添加元素(在0位置)
splice() 通過指定數(shù)組的一個索引刪除或者插入另一個元素。splice() 需要3個參數(shù):新元素添加的索引位置,需要刪除的元素(0代表沒有),以及想要添加的元素。
carList.splice(1,0,"hello","world");
12.2.3 從數(shù)組中移除或返回元素
每個用于刪除的方法在有需要的情況下,可以在將元素丟棄之前返回元素的值。
pop() 從數(shù)組刪除元素并返回最后的元素
shift() 從數(shù)組刪除并返回第一個元素
slice() 通過指定的索引位置從數(shù)組刪除并返回元素。slice()有兩個參數(shù):起始返回元素的索引位置和結(jié)束返回元素的索引位置。
如果沒有指定slice()方法的第二個參數(shù),將返回從起始參數(shù)之后的'所有元素。
將第一個參數(shù)值指定為負數(shù)則意味著,將數(shù)組末尾的指定元素個數(shù)向前切割。
12.2.4 遍歷數(shù)組
for..each 遍歷用于一個數(shù)組中的所有元素。
forEach()調(diào)用的函數(shù)從調(diào)用的方法處接受3個參數(shù)
elements:* 在循環(huán)中當前索引位置元素的值
index:int 在循環(huán)中當前索引元素的索引位置
arrary:Array forEach()方法的數(shù)組
arrayName.forEach(arrayFunction);
function arrayFunction(element:*,index:int,array:Array):void{
}
12.3 Object類和關(guān)聯(lián)數(shù)組
數(shù)組適用于存儲列式的數(shù)據(jù),最佳的做法是使用一致的分類或類型以保持數(shù)組信息的一致性。
使用Object類的基本對象和關(guān)聯(lián)數(shù)組為每一項創(chuàng)建高級的數(shù)據(jù)結(jié)構(gòu),用于分類和存儲大量的信息。
12.3.1 Object類
Object類是所有對象的基礎(chǔ)。之所以要為數(shù)據(jù)結(jié)構(gòu)定義對象時因為將其作為信息的數(shù)據(jù)桶,然后你可以為自定義對象設(shè)置屬性。
var obj:Object=new Object();
obj.firstName="tony";
var obj:Object=[firstName:"tony",lastName:"alva"];(對象字面量)
要檢索對象的屬性,只要直接調(diào)用對象的名稱跟上屬性名即可。
12.3.2 數(shù)組存取
使用數(shù)組的存取運算符動態(tài)設(shè)置和檢索對象屬性的值。使用數(shù)組存取副可以與使用對象的屬性一樣獲取存儲在變量中的值。
var newStater:String ="firstName"
var obj:Object = { firstName:"tony" }
trace(obj[newStater]);
同樣,也可以使用數(shù)組存取符設(shè)置和檢索對象的屬性
var obj:Object = new Object();
obj["stater" + 1] = "tony";
trace(obj[stater1])
最后,數(shù)據(jù)存取符允許向數(shù)組對象添加屬性并向關(guān)聯(lián)數(shù)組一樣使用屬性
var arr:Array = new Array();
arr["stater"] = "tony";
trace(arr["stater"])
12.3.3 關(guān)聯(lián)數(shù)組
使用Objec類的關(guān)聯(lián)數(shù)組,便可以存儲含有多個屬性的項目。當將一個屬性對象傳給關(guān)聯(lián)數(shù)組對象時,并沒有創(chuàng)建一個對象。同時,可以使用花括號并給屬性對象設(shè)置索引,而不再需要其他對象。
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)
}
流程控制:循環(huán)和條件。
條件語句:if…else,if…else if,switch
循環(huán)語句:for,
for…in 對象、數(shù)組
for each…in XML、對象、數(shù)組
while
do…while
ActionScript3.0自學教程:創(chuàng)建條件語句
13.1條件語句
在as中,最基本的條件語句是if[...else if][...else]
13.1.1 關(guān)系和等于運算符
> < == >= <= !=
13.1.2 在條件語句中檢查一個布爾類型的值
13.1.3 檢查多個條件
&& ||
13.1.4 基于對象的關(guān)系運算符
條件邏輯也可用于驗證一個變量的類型或者對象的類。要實現(xiàn)這些功能使用的是用于獲取變量類型的typeof運算符以及用于檢車類實例的is運算符。
13.1.5 使用一個事件處理器檢查多種事件類型
在一個對象中可以分發(fā)多種事件和事件類,并且多個對象也可分發(fā)同樣的事件。
如果你在一個事件處理器中使用條件邏輯,就可以處理從一個或多個對象分發(fā)的多種事件類和事件類型。每一個事件處理器有一個從事件分發(fā)者傳過來的事件對象。所有事件對象有一個屬性type。使用條件邏輯,就可以區(qū)分不同的事件類型,并且在一個事件處理器中處理他們。用一個方法將所有的事件處理器函數(shù)封裝起來,就可以將代碼簡化并且使得效率最高。
if(e.type==MouseEvent.MOUSE_OVER){
//Do something
}
13.2 使用switch語句檢查條件
ActionScript3.0自學教程:遍歷和重復
循環(huán)邏輯由遍歷和重復組成。循環(huán)是數(shù)據(jù)結(jié)構(gòu)中用于計數(shù)(遍歷)的控制結(jié)構(gòu)?梢允褂醚h(huán)來檢查一張圖片的所有像素數(shù)據(jù)。
14.1 for循環(huán)語句
14.1.1 使用for循環(huán)遍歷數(shù)組元素
使用for循環(huán)的關(guān)鍵是利用i值的變化。比如,可以使用i值的變化遍歷數(shù)組中已編號的元素
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 死循環(huán)
14.2 使用關(guān)聯(lián)數(shù)組建立動態(tài)菜單
14.3 遍歷對象屬性
14.3.1 使用for...in循環(huán)獲取對象的屬性
for...in循環(huán)通過獲取元素或?qū)傩缘囊眠M行遍歷數(shù)組元素和對象屬性。
14.3.2 for each...in循環(huán)獲取對象的屬性
for each...in循環(huán)存儲了引用的屬性或者元素的實際值,而不僅僅是元素或?qū)傩缘囊谩?/p>
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循環(huán)語句
【ActionScript3.0自學教程】相關(guān)文章: