JavaScript中Array

ForTechnology發表於2011-08-05
JavaScript中Array(陣列)的屬性和方法 收藏
陣列有四種定義的方式
使用建構函式:
var a = new Array();
var b = new Array(8);
var c = new Array("first", "second", "third");
或者陣列直接量:
var d = ["first", "second", "third"];
屬性
Array只有一個屬性,就是length,length表示的是陣列所佔記憶體空間的數目,而不僅僅是陣列中元素的個數,在剛才定義的陣列中,b.length的值為8

陣列的length屬性是可寫的,這是一個非常有意思的屬性,我們可以通過這種方法來擷取陣列

方法
這裡並沒有包括IE和FF並不相容的一些方法:
toString():把陣列轉換成一個字串
toLocaleString():把陣列轉換成一個字串
join():把陣列轉換成一個用符號連線的字串
shift():將陣列頭部的一個元素移出
unshift():在陣列的頭部插入一個元素
pop():從陣列尾部刪除一個元素
push():把一個元素新增到陣列的尾部
concat():給陣列新增元素
slice():返回陣列的部分
reverse():將陣列反向排序
sort():對陣列進行排序操作
splice():插入、刪除或者替換一個陣列元素
toString()方法,toLocaleString()方法的作用類似,FF下的作用是完全相同的,IE的話如果元素是字串,會在“,”後 面加上一個空格,如果元素是數字,會擴充套件到兩位小數,兩者都會改變字串的length屬性,所以考慮到相容性,儘量不要使用 toLocaleString()方法。

join()方法將陣列中的所有元素轉換成字串,然後連線起來,這剛好和String的split()方法是一個相反的操作。join()預設是使用“,”作為分隔符,當然你也可以在方法中指定分隔符

pop()方法可以從陣列尾部刪除若干個元素,push()方法把一個元素新增到陣列的尾部,這兩個方法剛好是兩個相反的操作。兩個都是對原來的陣列進行操作,但是要注意push()方法返回的是新的陣列的長度,而pop()方法則返回被刪去的那個元素。

shift()方法可以從陣列頭部刪除一個元素,unshift()方法把若干元素新增到陣列的頭部,這兩個方法剛好是兩個相反的操作。兩個都是對原來的陣列進行操作,但是要注意unshift()方法返回的是新的陣列的長度,而shift()方法則返回被刪去的那個元素。

concat()方法可以返回一個在原有陣列上增添了元素的陣列,元素用“,”分隔,元素中如果有陣列,將被展開並繼續新增,但不支援多維陣列形式的展開新增

slice()方法返回陣列的一個片斷,或者說是子陣列。slice()的參數列示字陣列的始末位置,如果只有一個引數,就表示從該處開始一直取到最後,如果引數出現負數,則表示倒數的某個位置。

reverse()方法將陣列反向排序,他並不建立和返回一個新的陣列,而是在原有的陣列上進行操作

sort()方法的作用是對陣列進行排序,這是一個非常奇特的方法,我不知道當初創作他的人是出於懶惰還是聰明,這是一個讓我印象深刻的方法。
sort()方法的引數是一個有兩個引數,並且有返回值的函式,如果返回的值大於零,則說明前一個引數比後一個引數大,等於零則相等,小於零說明前一個引數比後一個小,而相對小的那個引數將出現在排序的前列。
sort()方法直接在陣列上進行操作,同時也返回值,但是兩者似乎是等價的。sort()方法預設是用字母的順序進行排序

splice()方法的作用是插入、刪除或者替換一個陣列元素,他不光會在原有的陣列上進行修改,還會返回被處理掉的內容,因此這是一個功能強大,但是不容易使用的方法,splice()方法用前兩個引數進行定位,餘下的參數列示插入部分。


 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25897606/viewspace-704296/,如需轉載,請註明出處,否則將追究法律責任。

相關文章