來自: http://hi.baidu.com/skyxuanxuan/blog/item/5eae69ec7e72a8dbb31cb148.html
注:JAVAScript數(shù)組與VBScript的數(shù)組不單在語法上不同,在使用時也有眾多不同之處,請注意區(qū)分。
一、建立數(shù)組對象
我們再介紹JAVAScript的數(shù)組對象的建立方法。(其實這種方法和前面的方法在本質(zhì)上是一樣的,只是在語句的寫法上有所區(qū)別,上面的方法在程序很短的時使用比較簡潔,在一般情況下我還是建議您用以下方法建立數(shù)組對象。)建立數(shù)組對象的語法有兩種:
1、在聲明數(shù)組時僅僅聲明數(shù)組內(nèi)有幾個組件。
var 數(shù)組對象名稱 = new Array(組件個數(shù));
fruit = new Array(3); //聲明名為fruit的數(shù)組,共有三個組件,這就相當于一次聲明了三個變量
然后必須另行準備幾行程序代碼,代序將變量值填入。
fruit[0] = "西瓜"; fruit[1] = "蘋果"; fruit[2] = "香蕉";
2、聲明時直接給定所有數(shù)組組件,彼此之間用逗號隔開,用小括號括起來,組件個數(shù)就是數(shù)組長度。
var 數(shù)組對象名稱 = new Array(組件一......,組件N);
var fruit = new Array("西瓜","蘋果","香蕉");
注:在一般語言中數(shù)組內(nèi)的組件必須是相同類型的值,但是在JAVAScript當中可以將不同類型的數(shù)據(jù)放入數(shù)組中。
二、數(shù)組對象的屬性
JAVAScript為數(shù)組對象提供以下幾種屬性:
使用格式: 數(shù)組對象名稱.屬性
序 屬性名稱 使用說明 1 constructor 指定建立地象原型(prototype)函數(shù) 2 index 代表數(shù)組組件的索引值 3 input 代表規(guī)則表達式中的字符串。 4 length 取得數(shù)組長度(數(shù)組組件個數(shù))。 5 prototype 用以建立自定義的對象屬性
三、數(shù)組對象的方法
JAVAScript為數(shù)組對象提供以下多種方法:
使用格式: 數(shù)組對象名稱.方法(參數(shù))
序 方法名稱 使用說明 1 concat(數(shù)組1,數(shù)組2,...,數(shù)組N) 將多個數(shù)組結合成一個新的數(shù)組 2 join(分隔字符) 將數(shù)組結合成一個字符串,用特定字符來分開 3 pop() 將數(shù)組內(nèi)最后一個組件刪除,并返回該組件內(nèi)容 4 push(組件1,組件2,...,組件N) 將一個或多個組件補在數(shù)組最后面,并返回最后一個組件內(nèi)容 5 reverse() 將數(shù)組內(nèi)所有組件的索引次序反轉(Transpose) 第一個組件變成最后一個,最后一個組件則拿到最前面 6 shift() 將數(shù)組內(nèi)第一個組件刪除,并返回該組件內(nèi)容 7 slice(開始索引,結束索引) 將數(shù)組內(nèi)容轉入一個新的數(shù)杉 8 sort() 將數(shù)組內(nèi)容排序 9 splice() 增加或刪除數(shù)組組件 10 toSource() 返回代表特定數(shù)組的數(shù)組常數(shù),可以用來建立新的數(shù)組 11 toString() 以字符串來表示該數(shù)組及其組件 12 unshift(組件1,組件2,...,組件N) 將一個或多個組件補在數(shù)組最前面,并返回最后數(shù)組長度 13 valueOf() 取得數(shù)組值
注:其中有些方法,例如:push、shift、unshift……在有些版本的IE瀏覽器還不支持,使用時應特別注意。 舉例:
<Script language = "JAVAScript"> <!-- var fruit = new Array("西瓜","香蕉","蘋果"); //聲明數(shù)組并給數(shù)組內(nèi)三種水果賦值 //第一次顯示數(shù)組“fruit”的3個變量內(nèi)容,<br>是換行符 document.write(fruit[0] + "<br>" + fruit[1] + "<br>" + fruit[2] + "<br>" + fruit); document.write("<hr>"); //插入水平線做為分隔線 //第二次顯示數(shù)組,<hr>是插入水平線做為分隔線 with (document) { write(fruit.reverse() + "<hr>"); //將數(shù)組反轉 write(fruit.join("、") + "<hr>"); //將數(shù)組結合成一個字符串,用“、”分開 write(fruit.sort() + "<hr>"); //將數(shù)組內(nèi)容排序 write(fruit.length + "<hr>"); //計算出數(shù)組的長度 } --> </Script>
三、二維數(shù)組
JAVAScript的數(shù)組對象其實只是一維的結構,但是我們可以利用對一維數(shù)組的進一步設計與利用,將數(shù)組放進數(shù)組當中,讓數(shù)組內(nèi)的組件也是數(shù)組,就構成JAVAScript的二維數(shù)組了。不過二維數(shù)組在使用上容易發(fā)生錯誤,所以我們這里只介紹一下它的概念,并不推薦使用。
/**********************************************************/ js刪除數(shù)組元素 :
<script language="javascript" type="text/javascript">
Array.prototype.del=function(n) {//n表示第幾項,從0開始算起。
//prototype為對象原型,注意這里為對象增加自定義方法的方法。
if(n<0)//如果n<0,則不進行任何操作。
returnthis;
else
returnthis.slice(0,n).concat(this.slice(n+1,this.length));
/**//*
concat方法:返回一個新數(shù)組,這個新數(shù)組是由兩個或更多數(shù)組組合而成的。
這里就是返回this.slice(0,n)/this.slice(n+1,this.length)
組成的新數(shù)組,這中間,剛好少了第n項。
slice方法: 返回一個數(shù)組的一段,兩個參數(shù),分別指定開始和結束的位置。
*/
}
//我們來試一試這個自己增加的方法
var test=new Array(0,1,2,3,4,5);
test=test.del(3);//從0算起,這里也就是刪除第4項。
alert(test);
</script>
/************************************************************/ 1。JS數(shù)組有別于其他語言的一個重要特點是,他可以在不同行包含不同的數(shù)據(jù)類型,這也算JS這種弱類型語言的一個特色吧!
2。JS數(shù)組還有個大的特色就是不支持多維數(shù)組,這點不如VBS,赫赫,但是也不是沒有辦法,我們可以在數(shù)組中包含數(shù)組,或者使用關聯(lián)數(shù)組 3。var al=new Array(1,2,3,4,5,6,7,8,9,"天轟穿","javascript入門系列","vs2005系列控件演示")//申明一個數(shù)組al ,并賦初始值 //下面兩句是在數(shù)組的指定位置插入兩個元素,這樣,初始的的元素就會順延 al[5]="thcjp"; al[9]=8867; //以下是讀取 for(var i=0;i<al.length;i++) {//申明一個值為0的變量 i ,循環(huán)到數(shù)組的最大項 document.write(i+1 +"·<b>"+al[i]+"</b><br>");//在屏幕上打印出數(shù)組的所有元素,這里可以注意下括號內(nèi)的代碼 }
|