JavaScript中的數(shù)組操作介紹
JavaScript中的數(shù)組對(duì)象自帶了一些方法,可以通過使用這些方法來對(duì)數(shù)組進(jìn)行操作。
join()
可以使用join()方法將數(shù)組中的成員合并到一個(gè)字符串中:
var o = [1,2,3];
console.log(o.join());//1,2,3
console.log(o.join(" "));//1 2 3
var emptyArray = new Array(10);
console.log(emptyArray.join("-"));//----------
從上面的例子中可以看到,如果join()方法不帶參數(shù),那么JavaScript會(huì)用逗號(hào)作為分隔符將所有的成員合并到一個(gè)字符串中;如果join()方法接受參數(shù),那么這個(gè)參數(shù)會(huì)作為分隔符來使用。
reverse()
可以使用reverse()方法將數(shù)組中的成員順序進(jìn)行顛倒:
//reverse()
o.reverse();
console.log(o);//[3,2,1]
可以看到,調(diào)用reverse()語(yǔ)句后,數(shù)組自身將發(fā)生改變。
執(zhí)行reverse()語(yǔ)句的返回結(jié)果為發(fā)生改變后的數(shù)組對(duì)象。
sort()
可以使用sort()方法對(duì)數(shù)組中的成員進(jìn)行排序(默認(rèn)以字母順序排列)。與reverse()語(yǔ)句一樣,sort()語(yǔ)句會(huì)對(duì)數(shù)組自身進(jìn)行修改并返回修改后的數(shù)組對(duì)象:
var a = ["Phone", "Mobile",,,"Canon"];
a.sort();
console.log(a);//["Canon", "Mobile", "Phone", undefined, undefined]
var b = [33,44,111];
console.log(b.sort());//[111, 33, 44]
console.log(b.sort(function(a,b){return a-b}));//[33, 44, 111]
可以看到,sort()語(yǔ)句還接受一個(gè)function作為參數(shù)來實(shí)現(xiàn)自定義排序。
concat()
可以使用concat()方法對(duì)數(shù)組進(jìn)行拼接:
var c = [1,2,3];
console.log(c.concat(4));//[1, 2, 3, 4]
console.log(c.concat(5,6));//[1, 2, 3, 5, 6]
console.log(c.concat([7,8]));//[1, 2, 3, 7, 8]
console.log(c.concat([9,10], [11,12]));//[1, 2, 3, 9, 10, 11, 12]
console.log(c.concat([42,43,[44,45]]));//[1, 2, 3, 42, 43, [44, 45]]
console.log(c);//[1, 2, 3]
可以看到,與reverse()和sort()不同,concat()語(yǔ)句僅僅只是返回拼接后的結(jié)果而已,對(duì)數(shù)組自身不會(huì)產(chǎn)生任何修改。
slice()
可以使用slice()語(yǔ)句來獲取數(shù)組中的子數(shù)組(sub-array):
var d = [1,2,3,4,5,6];
console.log(d.slice(0,3));//[1,2,3]
console.log(d.slice(3,1));//[]
與concat()一樣,slice()語(yǔ)句僅僅只是返回操作后的結(jié)果而已,對(duì)數(shù)組自身不會(huì)產(chǎn)生任何修改。對(duì)于slice()語(yǔ)句中的兩個(gè)參數(shù),JavaScript遵循“前包括后不包括”的原則:第一個(gè)參數(shù)所指定的數(shù)組成員會(huì)出現(xiàn)在子數(shù)組中,而第二個(gè)參數(shù)所指定的數(shù)組成員則不會(huì)出現(xiàn)。
splice()
可以使用splice()語(yǔ)句來對(duì)數(shù)組進(jìn)行插入和敲除操作。其第一個(gè)參數(shù)指定插入或敲除的位置(位置成員),第二個(gè)參數(shù)指定敲除成員的數(shù)目(從位置成員開始敲除),從第三個(gè)參數(shù)開始,所有的參數(shù)都會(huì)被插入到數(shù)組中(從位置成員之前進(jìn)行插入)。splice()語(yǔ)句返回的結(jié)果為被敲除的數(shù)組成員所組成的數(shù)組。與concat()和slice()不同,splice()會(huì)對(duì)數(shù)組自身產(chǎn)生修改。
var e = [1,2,3,4,5,6,7];
console.log(e.splice(1,2));//[2,3]
console.log(e);//[1,4,5,6,7]
console.log(e.length);//5
e.splice(1,0,2,3,[4,5]);
console.log(e);//[1, 2, 3, [4, 5], 4, 5, 6, 7]
相關(guān)文章
javascript省市區(qū)三級(jí)聯(lián)動(dòng)下拉框菜單實(shí)例演示
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)下拉框菜單很詳細(xì)的代碼,解決了大家實(shí)現(xiàn)javascript省市區(qū)三級(jí)聯(lián)動(dòng)下拉框菜單的問題,感興趣的小伙伴們可以參考一下2015-11-11
js通過八個(gè)點(diǎn) 拖動(dòng)改變div大小的實(shí)現(xiàn)方法
本篇文章主要是對(duì)js通過八個(gè)點(diǎn) 拖動(dòng)改變div大小的實(shí)現(xiàn)方法進(jìn)行了介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助2014-03-03
JavaScript合并兩個(gè)數(shù)組并去除重復(fù)項(xiàng)的方法
這篇文章主要介紹了JavaScript合并兩個(gè)數(shù)組并去除重復(fù)項(xiàng)的方法,涉及javascript操作數(shù)組的合并與去重的相關(guān)技巧,需要的朋友可以參考下2015-06-06
js 時(shí)間格式與時(shí)間戳的相互轉(zhuǎn)換示例代碼
很多的新手朋友們對(duì)js中的時(shí)間格式與時(shí)間戳的轉(zhuǎn)換比較陌生,下面就為大家詳細(xì)介紹下具體的轉(zhuǎn)換步驟,感興趣的朋友可以參考下2013-12-12
用javascript實(shí)現(xiàn)截取字符串包含中文處理的函數(shù)
一直不知道js可以截取中文字符,呵呵,原理用正則表達(dá)式,匹配中文的長(zhǎng)度,中文算兩個(gè),因?yàn)樗阋粋€(gè),是個(gè)好東西,推薦大家收藏2008-04-04
JS HTML5實(shí)現(xiàn)拖拽移動(dòng)列表效果
這篇文章主要為大家詳細(xì)介紹了JS HTML5實(shí)現(xiàn)拖拽移動(dòng)列表效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-07-07

