JavaScript Array(陣列) 對象

JavaScript 陣列基本概念

陣列是一系列值的集合,即可以看做是多個變數以一個總的變數來表示。陣列包含了 0 個或多個陣列元素。

建立陣列

JavaScript 中使用new 關鍵字來建立數組,語法如下:

// 建立空數組:
new Array()
// 建立num 個元素的陣列:
new Array(num)
// 直接建立帶有元素值的陣列:
new Array(element0,element1,element2...)

#說明:Array(3) 表示建立元素個數為3 的數組,但實際上該數組的元素個數仍然是可變的。以下是常用的建立陣列的範例:

var array_1 = new Array();
array_1[0] = 'a';
array_1[1] = 10.5;
array_1[2] = true;

var array_2 = new Array(3)
array_2[0] = {x:10, y:15};
array_2[1] = document. getElementById("article");
array_2[2] = new Array();

var array_3 = new Array('a',10.5,true);


#陣列元素就像變數一樣,可以是任何JavaScript 支援的東西,甚至可以是一個陣列,如上面的範例所示。

JavaScript 也支援隱形宣告建立一個陣列:

var array_4 = ['a',10.5,true]; 

#但需要注意,array_4 與array_3 是不相等的,alert( array_3==array_4 ) 會輸出false。


陣列元素的操作

讀取元素的值

陣列包含了多個陣列元素,對陣列元素的存取是透過下標來完成的,注意下標是從0 開始計數的:

var array_3 = new Array('a',10.5,true);
alert( array_3[1] ); // 輸出:10.5

修改元素的值

var array_3 = new Array('a',10.5,true);
array_3[1] = 20; // 賦新值給元素
alert( array_3[1] ); // 輸出:20


增加元素

JavaScript 支援以下標的新式直接在陣列後面增加新的元素:

var array_3 = new Array('a',10.5,true);
array_3[3] = 'new value'; // 賦新值給元素
alert( array_3[3] ); // 彈出提示窗輸出:20

增加陣列元素更多的方法也可以參考:

JavaScript push 方法:在陣列的末端新增一個或多個元素

JavaScript unshift 方法:在陣列的開頭新增一個或多個元素

#JavaScript splice 方法:插入、刪除或取代陣列的元素

刪除元素

要刪除陣列元素,請參考以下內容:

JavaScript pop 方法:在陣列的末端新增一個或多個元素

JavaScript shift 方法:在陣列的開頭新增一個或多個元素

JavaScript splice 方法:插入、刪除或取代陣列的元素

提示:將陣列元素賦值為null 的方式,只能清除元素的值而無法刪除該元素。

實例:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>
<p id="demo"></p>
<button onclick="myFunction()">点我</button>
<script>
Array.prototype.myUcase=function(){
for (i=0;i<this.length;i++){
this[i]=this[i].toUpperCase();
}
}
function myFunction(){
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.myUcase();
var x=document.getElementById("demo");
x.innerHTML=fruits;
}
</script>
</body>
</html>


繼續學習
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script type="text/javascript"> var array_1 = new Array(); array_1[0] = new Array('a','b','c','f'); document.write(array_1); </script> </head> <body> </body> </html>