首先數組的定義以及初始化的方法:
var myArray = new Array(1,3.1415,"love"); //這裡注意myArray數組中的元素不只是同一種資料類型的元素,可以有整形,有浮點型,有字串等等都可以。這裡充分展示了javascript作為一種語言對資料類型的弱化,語言更加的隨意化,簡單化。就行定義物件的時候用var一樣。
在此介紹的有限,同時有一些我沒有給出結果,希望大家自己體會,自己動手嘗試一下,看看結果到底是什麼,這樣有助於記憶。以下帶[]是可以省去的參數。
Array的屬性:
length:數組物件的長度,即數組元素的個數。這裡同樣要注意第一元素的下標是0.
document.write(myArray.length); //結果是3
Array的方法:
複製代碼代碼如下:
join(<分隔符號>):把數組中的各元素逐一連接起來,用分隔符號置於元素與元素之間
document.write(myArray.join("-")); //輸出結果:1-3.1415-love
document.write(myArray.join(" ")); //輸出結果:是什麼呢?
document.write(myArray.join("*¥")); //輸出結果:是什麼呢?
document.write(myArray.join("* &")); //輸出結果:是什麼呢?
document.write(myArray.join(" ")); //輸出結果:是什麼呢?
reverse():將數組中的元素的順序顛倒
document.write(myArray.reverse()); //輸出結果:love,3.1415,1
slice(<始>[,<終>]):相當於數組的裁切,這裡不包括終。看到這裡大家應該會聯想到關於Sting物件的substring()和substr()方法了吧。 。其實都類似。
var arraynumber = new Array(1,2,3,4,5,6,7,8);
document.write(arraynumber.slice(3)); //輸出結果:4,5,6,7,8
document.write(arraynumber.slice(3,5)); // 輸出結果:4,5
i made a mistake,我原本寫的結果是4,5,6,其實是4,5。多謝有位朋友提出來。大家注意一下,其實slice方法是不包括終止位置的。
document.write(arraynumber.slice(3,3)); // 輸出結果:是什麼呢?
document.write(arraynumber.slice(3,2)); // 輸出結果:是什麼呢?
document.write(arraynumber.slice(3,-1)); // 輸出結果:是什麼呢?
document.write(arraynumber.slice(-100)); // 輸出結果:是什麼呢?
sort([<方法函數>]):排序
不帶方法函數,按字母順序進行排序,即按照字元編碼的順序排序,不是通常認為的按數值排序。
如果帶方法函數,則按方法函數排序。
例子:
複製代碼代碼如下:
<script>
function sortNumber(a,b)
{
return ab;
}
var myArray = new Array(3,2,54,23,90,250);
document.write("document.write("未經sort排序的數值:",myArray,"<br />")
document.write("預設sort排序的數值:",myArray.sort(),"<br />")
document.write("經sortNumber()的sort所排序的數值:",myArray.sort(sortNumber),"<br />")
</script>
結果是:
未經sort排序的數值:3,2,54,23,90,250
預設sort排序的數值:這個我也不知道,主要誰去記字元編碼呢。
經sortNumber()的sort排序的數值:2,3,23,54,90,250
大家如果把sortNumber方法中的"ab"改成"ba",結果是什麼呢?