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