JavaScript Array(數(shù)組) 對象
JavaScript?Array(數(shù)組)?對象
什么是數(shù)組?
數(shù)組對象是使用單獨的變量名來存儲一系列的值。
如果你有一組數(shù)據(jù)(例如:車名字),存在單獨變量如下所示:
var car1="Saab";
var car2="Volvo";
var car3="BMW";
然而,如果你想從中找出某一輛車?并且不是3輛,而是300輛呢?這將不是一件容易的事!
最好的方法就是用數(shù)組。
數(shù)組可以用一個變量名存儲所有的值,并且可以用變量名訪問任何一個值。
數(shù)組中的每個元素都有自己的的ID,以便它可以很容易地被訪問到。
創(chuàng)建一個數(shù)組
創(chuàng)建一個數(shù)組,有三種方法。
下面的代碼定義了一個名為 myCars的數(shù)組對象:
1: 常規(guī)方式:
var myCars=new Array();?
myCars[0]="Saab";???????
myCars[1]="Volvo";
myCars[2]="BMW";
2: 簡潔方式:
var myCars=new Array("Saab","Volvo","BMW");
3: 字面:
var myCars=["Saab","Volvo","BMW"];
訪問數(shù)組
通過指定數(shù)組名以及索引號碼,你可以訪問某個特定的元素。
以下實例可以訪問myCars數(shù)組的第一個值:
var name=myCars[0];
以下實例修改了數(shù)組 myCars 的第一個元素:
myCars[0]="Opel";
[0] 是數(shù)組的第一個元素。[1] 是數(shù)組的第二個元素。 ? ?
在一個數(shù)組中你可以有不同的對象
所有的JavaScript變量都是對象。數(shù)組元素是對象。函數(shù)是對象。
因此,你可以在數(shù)組中有不同的變量類型。
你可以在一個數(shù)組中包含對象元素、函數(shù)、數(shù)組:
myArray[0]=Date.now;
myArray[1]=myFunction;
myArray[2]=myCars;
數(shù)組方法和屬性
使用數(shù)組對象預(yù)定義屬性和方法:
var x=myCars.length???????????? // myCars 中元素的數(shù)量
var y=myCars.indexOf("Volvo")?? // "Volvo" 值的索引值
數(shù)組對象的作用是:使用單獨的變量名來存儲一系列的值。
<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 聲明來循環(huán)輸出數(shù)組中的元素:
<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() 方法來合并兩個數(shù)組:
<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() 方法從字面上對數(shù)組進行排序:
<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ù)值上對數(shù)組進行排序:
<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>