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自學教程】相關文章: