JavaScript Array(陣列) 對(duì)象
JavaScript?Array(陣列)?物件
#什麼是陣列?
陣列物件是使用單獨(dú)的變數(shù)名稱來(lái)儲(chǔ)存一系列的值。
如果你有一組資料(例如:車名),存在單獨(dú)變數(shù)如下所示:
var car1="Saab";
var car2="Volvo";var car3="BMW";
#然而,如果你想從中找出某一輛車?並且不是3輛,而是300輛呢?這將不是一件容易的事!
最好的方法就是用陣列。
陣列可以用一個(gè)變數(shù)名稱儲(chǔ)存所有的值,並且可以用變數(shù)名稱存取任何一個(gè)值。
陣列中的每個(gè)元素都有自己的ID,以便它可以很容易地被存取。
建立一個(gè)陣列
建立一個(gè)數(shù)組,有三種方法。
下面的程式碼定義了一個(gè)名為myCars的陣列物件:
1: 常規(guī)方式:
var myCars=new Array();?
myCars[0 ]="Saab";???????myCars[1]="Volvo";
myCars[2]="BMW";2: 簡(jiǎn)潔方式:#var myCars= new Array("Saab","Volvo","BMW");3: 字面上:var myCars=["Saab","Volvo","BMW"];存取陣列######透過(guò)指定陣列名稱以及索引號(hào)碼,你可以存取某個(gè)特定的元素。 ######以下實(shí)例可以存取myCars陣列的第一個(gè)值:######var name=myCars[0];######以下實(shí)例修改了陣列myCars 的第一個(gè)元素: ######myCars[0]="Opel";###################[0] 是數(shù)組的第一個(gè)元素。 [1] 是數(shù)組的第二個(gè)元素。 ? ?######在一個(gè)陣列中你可以有不同的物件######所有的JavaScript變數(shù)都是物件。數(shù)組元素是對(duì)象。函數(shù)是物件。 ######因此,你可以在陣列中有不同的變數(shù)類型。 ######你可以在一個(gè)陣列中包含物件元素、函數(shù)、陣列:###myArray[0]=Date.now;
myArray[1]=myFunction;
myArray[2]=myCars;
陣列方法和屬性
使用陣列物件預(yù)先定義屬性與方法:
var x=myCars.length???????????? // myCars 中元素的數(shù)量
var y=myCars.indexOf("Volvo")?? // "Volvo" 值的索引值
<html> <meta charset="utf-8"> <body> <script type="text/javascript"> var mycars = new Array() mycars[0] = "Saab" mycars[1] = "Volvo" mycars[2] = "BMW" for (i=0;i<mycars.length;i++) { document.write(mycars[i] + "<br />") } </script> </body> </html>使用for...in 宣告來(lái)循環(huán)輸出陣列中的元素:
<html> <meta charset="utf-8"> <body> <script type="text/javascript"> var x var mycars = new Array() mycars[0] = "Saab" mycars[1] = "Volvo" mycars[2] = "BMW" for (x in mycars) { document.write(mycars[x] + "<br />") } </script> </body> </html>如何使用concat() 方法合併兩個(gè)陣列:
<html> <meta charset="utf-8"> <body> <script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" var arr2 = new Array(3) arr2[0] = "James" arr2[1] = "Adrew" arr2[2] = "Martin" document.write(arr.concat(arr2)) </script> </body> </html>如何使用sort() 方法從字面上對(duì)陣列進(jìn)行排序:
<html> <meta charset="utf-8"> <body> <script type="text/javascript"> var arr = new Array(6) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" arr[3] = "James" arr[4] = "Adrew" arr[5] = "Martin" document.write(arr + "<br />") document.write(arr.sort()) </script> </body> </html>如何使用sort() 方法從數(shù)值上對(duì)陣列進(jìn)行排序:
<html> <meta charset="utf-8"> <body> <script type="text/javascript"> function sortNumber(a, b) { return a - b } var arr = new Array(6) arr[0] = "10" arr[1] = "5" arr[2] = "40" arr[3] = "25" arr[4] = "1000" arr[5] = "1" document.write(arr + "<br />") document.write(arr.sort(sortNumber)) </script> </body> </html>