Array 數(shù)組對象
數(shù)組對象是一個對象的集合,里邊的對象可以是不同類型的。數(shù)組的每一個成員對象都有一個“下標”,用來表示它在數(shù)組中的位置,是從零開始的。
(一)數(shù)組定義的方法:
- 定義了一個空數(shù)組:
var 數(shù)組名= new Array();
2.定義時指定有n個空元素的數(shù)組:
var 數(shù)組名 =new Array(n);
3.定義數(shù)組的時候,直接初始化數(shù)據(jù):
var 數(shù)組名 = [<元素1>, <元素2>, <元素3>...];
【案例】
var myArray = [2, 8, 6];
說明:定義了一個數(shù)組 myArray,里邊的元素是:myArray[0] = 2; myArray[1] = 8; myArray[2] = 6。
(二)數(shù)組元素使用:
數(shù)組名[下標] = 值;
【注意】:
數(shù)組的下標用方括號括起來,從0開始.
(三)數(shù)組屬性:
length 用法:<數(shù)組對象>.length;返回:數(shù)組的長度,即數(shù)組里有多少個元素。它等于數(shù)組里最后一個元素的下標加一。
(四)數(shù)組方法:

一、數(shù)組連接concat()
concat() 方法用于連接兩個或多個數(shù)組。此方法返回一個新數(shù)組,不改變原來的數(shù)組。
【語法】:
arrayObject.concat(array1,array2,...,arrayN)
【參數(shù)說明】:
array1 要連接的第一個數(shù)組。
……
arrayN 第N個數(shù)組。
【注意】:
該方法不會改變現(xiàn)有的數(shù)組,而僅僅會返回被連接數(shù)組的一個副本。
【案例】:
創(chuàng)建了三個數(shù)組,然后使用 concat() 把它們連接起來,代碼如下:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Array對象 </title>
<script type="text/javascript">
var mya1= new Array("hello!")
var mya2= new Array("I","love");
var mya3= new Array("JavaScript","!");
var mya4=mya1.concat(mya2,mya3);
document.write(mya4);
</script>
</head>
<body>
</body>
</html>
【結(jié)果】:

二、指定分隔符連接數(shù)組元素join()
join()方法用于把數(shù)組中的所有元素放入一個字符串。元素是通過指定的分隔符進行分隔的。
【語法】:
arrayObject.join(分隔符)
【參數(shù)說明】:
separator 可選。指定要使用的分隔符。如果省略該參數(shù),則使用逗號作為分隔符。
【注意】:
返回一個字符串,該字符串把數(shù)組中的各個元素串起來,用<分隔符>置于元素與元素之間。這個方法不影響數(shù)組原本的內(nèi)容。
【案例】使用分隔符來分隔數(shù)組中的元素,代碼如下:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Array對象 </title>
<script type="text/javascript">
var myarr = new Array(3)
myarr[0] = "I";
myarr[1] = "love";
myarr[2] = "JavaScript";
document.write(myarr.join("."));
</script>
</head>
<body>
</body>
</html>

三、顛倒數(shù)組元素順序reverse()
reverse() 方法用于顛倒數(shù)組中元素的順序。
【語法】:
arrayObject.reverse()
【注意】:
該方法會改變原來的數(shù)組,而不會創(chuàng)建新的數(shù)組。
【案例】:顛倒元素的順序
<script type="text/javascript">
var myarr = new Array(3)
myarr[0] = "1"
myarr[1] = "2"
myarr[2] = "3"
document.write(myarr + "<br />")
document.write(myarr.reverse())
</script>

四、選定元素slice()
slice() 方法可從已有的數(shù)組中返回選定的元素。
【語法】
arrayObject.slice(start,end)
【參數(shù)說明】
start 必需。規(guī)定從何處開始選取。如果是負數(shù),那么它規(guī)定從數(shù)組尾部開始算起的位置。也就是說,-1指最后一個元素,-2指倒數(shù)第二個元素,以此類推。
end 可選。規(guī)定從何處結(jié)束選取。該參數(shù)是數(shù)組片斷結(jié)束處的數(shù)組下標。如果沒有指定該參數(shù),那么切分的數(shù)組包含從start到數(shù)組結(jié)束的所有元素。如果這個參數(shù)是負數(shù),那么它規(guī)定的是從數(shù)組尾部開始算起的元素。
1:返回一個新的數(shù)組,包含從 start 到 end (不包括該元素)的 arrayObject 中的元素。
2:該方法并不會修改數(shù)組,而是返回一個子數(shù)組。
【注意】:
1:可使用負值從數(shù)組的尾部選取元素。
2:如果 end 未被規(guī)定,那么 slice() 方法會選取從 start 到數(shù)組結(jié)尾的所有元素。
3:String.slice() 與 Array.slice() 相似。
【案例】
<script type="text/javascript">
var myarr = new Array(1,2,3,4,5,6);
document.write(myarr + "<br>");
document.write(myarr.slice(2,4) + "<br>");
document.write(myarr);
</script>
【結(jié)果】

五、數(shù)組排序sort()
sort()方法使數(shù)組中的元素按照一定的順序排列。
【語法】:
arrayObject.sort(方法函數(shù))
【參數(shù)說明】:
方法函數(shù)可選。規(guī)定排序順序。必須是函數(shù)。
1.如果不指定<方法函數(shù)>,則按unicode碼順序排列。
2.如果指定<方法函數(shù)>,則按<方法函數(shù)>所指定的排序方法排序。
【案例】排序函數(shù),代碼如下
<script type="text/javascript">
function sortNum(a,b) {
return a - b;
//升序,如降序,把“a - b”該成“b - a”
}
var myarr = new Array("80","16","50","6","100","1");
document.write(myarr + "<br>");
document.write(myarr.sort(sortNum));
</script>
【結(jié)果】

end.
本筆記整理自慕課網(wǎng)