AS基礎(chǔ)教程整理第8/13頁
更新時(shí)間:2007年03月22日 00:00:00 作者:
第九章 數(shù)組(arrays)
在下一個(gè)新版本的多選題里,我們將使用什么AS的特性,來讓它更好呢?
那就是數(shù)組。
數(shù)組就是一系列的數(shù)據(jù)(MOOCK又開始上課了,chocobo的英文和計(jì)算機(jī)都不算好,為免誤人子弟,概念性的東西盡量精簡(jiǎn))
例如這樣兩個(gè)變量?jī)?chǔ)存的數(shù)據(jù):
fruit1 = "oranges";
fruit2 = "apples";
它們是互相獨(dú)立的,使用起來很不方便,我們需要的是數(shù)組,以下是數(shù)組的定義方法,用“[]”框住,用“,”分隔開每個(gè)元素:
fruitList = ["oranges", "apples"];
現(xiàn)在兩個(gè)數(shù)據(jù)是放到同一個(gè)數(shù)組里面了,我們開始詳細(xì)解說數(shù)組
數(shù)組里面每一個(gè)數(shù)據(jù)稱為元素(element)。
而每一個(gè)元素都有個(gè)獨(dú)立數(shù)字代表所處的位置,數(shù)字叫索引(index),注意! 第一個(gè)數(shù)據(jù)的索引是0,第二個(gè)才是1
要按索引來提出數(shù)據(jù),我們要用一個(gè)運(yùn)算符[],例如使用fruitList第一個(gè)元素賦值給a:
a=fruitList[0];
又例如將a的值賦給fruitList第一個(gè)元素:
fruitList[0]=a;
當(dāng)然[]里面也可以放表達(dá)式、變量:
var index = 3;
// Set numApples to 2
var a = fruitList[index];
下面是個(gè)使用表達(dá)式的例子:
// Create a myFrames array. Note the legal formatting. 建立一個(gè)記錄LABEL的數(shù)組
var myFrames = ["storyEnding1",
"storyEnding2",
"storyEnding3",
"storyEnding4"];
// Set randomFrame to a randomly picked element of myFrames
// by calculating a random number between 0 and 3
// 隨機(jī)從數(shù)組中提取一個(gè)LABEL
var randomFrame = myFrames[Math.floor(Math.random() * 4)];
// Now go to the random frame
// 然后跳到該LABEL播放
gotoAndStop(randomFrame);
而數(shù)組包含數(shù)據(jù)的個(gè)數(shù)稱為長(zhǎng)度(length),例如fruitList.length 就等于2
對(duì)數(shù)組最常用的處理就是從數(shù)組中選出有用的數(shù)據(jù)了,來看一個(gè)運(yùn)用循環(huán)的例子:
// Create an array 建立數(shù)組,里面放了一些歌的類型
var soundtracks = ["electronic",
"hip hop",
"pop",
"alternative",
"classical"];
// Check each element to see if it contains "hip hop"
// 一個(gè)循環(huán),檢查每一個(gè)元素是否等于"hip hop"這個(gè)類型
// 另外,請(qǐng)留意此處MOOCK對(duì)FOR的寫法,J=0之前有一個(gè)VAR,這好象可有可無,其實(shí)是一個(gè)好習(xí)慣!
for (var j = 0; j < soundtracks.length; j++) {
trace("now examining element: " + j);
if (soundtracks[j] == "hip hop") {
trace("the location of 'hip hop' is index: " + j);
break; // 跳出循環(huán),找到了就不用再找了
}
}
關(guān)于數(shù)組的方法(method)
方法就是從屬于某一對(duì)象(object)的函數(shù),通常都是對(duì)該對(duì)象進(jìn)行處理的函數(shù)
好象太抽象了?我們還沒講到什么是對(duì)象,其實(shí)數(shù)組是對(duì)象的一種,我們就暫且將數(shù)組的方法理解為一個(gè)專門處理數(shù)組內(nèi)數(shù)據(jù)的結(jié)構(gòu)和內(nèi)容的工具吧
例如一個(gè)叫push()的方法就是一個(gè)工具,用于為數(shù)組添加一個(gè)元素,并且加在該數(shù)組的最后
使用起來并不復(fù)雜,看例子就知:
// Create an array with 2 elements
var menuItems = ["home", "quit"];
// Add an element 加一個(gè)元素
// menuItems becomes ["home", "quit", "products"]
// 現(xiàn)在數(shù)組的結(jié)構(gòu)變成["home", "quit", "products"]
menuItems.push("products");
// Add two more elements 這次是加兩個(gè)
// menuItems becomes ["home", "quit", "products", "services", "contact"]
menuItems.push("services", "contact");
跟push()相反從最后彈出一個(gè)元素的方法是pop()
而跟push()類似,但是是將一個(gè)元素加到數(shù)組的開頭的方法是unshift(),與之相反的是shift()
方法sort和reverse,用于重新排列數(shù)組的元素
方法splice用于從數(shù)組中間刪除某元素
方法slice和concat可以在某些數(shù)組的基礎(chǔ)上生成另一個(gè)新的數(shù)組
方法toString和join可以將整個(gè)數(shù)組變成單一個(gè)字符串
以上方法都可以從AS字典里面查到
相關(guān)文章
使用 AllowNetworking Flash的世界安靜了
使用 AllowNetworking Flash的世界安靜了...2007-03-03
as腳本之loadMovie完全實(shí)現(xiàn)教程
as腳本之loadMovie完全實(shí)現(xiàn)教程...2007-03-03
FLASH 多參數(shù)的URL地址(帶&符號(hào))
FLASH 多參數(shù)的URL地址的處理技巧。2009-05-05
xflash第一次升級(jí),xfml功能被強(qiáng)化
xflash第一次升級(jí),xfml功能被強(qiáng)化...2006-12-12
AS3.0 實(shí)例學(xué)習(xí) 熟悉addChild和removeChild在不同的swf之間的運(yùn)用,以及l(fā)oader的用法
這篇文章通過實(shí)例給大家介紹了AS3.0 實(shí)例學(xué)習(xí) 熟悉addChild和removeChild在不同的swf之間的運(yùn)用,以及l(fā)oader的用法,非常不錯(cuò),需要的朋友參考下吧2007-12-12
flash as Actionscript中的數(shù)組的使用方法
flash as Actionscript中的數(shù)組的使用方法...2007-11-11

