JS數(shù)組合并push與concat區(qū)別分析
本文實(shí)例講述了JS數(shù)組合并push與concat區(qū)別。分享給大家供大家參考,具體如下:
共同點(diǎn)
兩個(gè)方法都可以在一個(gè)數(shù)組內(nèi)增添新的元素,參數(shù)都是無限的參數(shù)列表,使用方法如下
var testPushArr=[]; testPushArr.push(item1,item2,item3...); var testConcatArr=[]; var concatArr = testConcatArr.concat(item1,item2,item3...);
push和concat的元素都既可以是普通元素(任意類型),也可以數(shù)組元素
區(qū)別
push()
push的item會(huì)添加到末尾,并且都是以整體的形式添加到數(shù)組末尾,數(shù)組元素會(huì)直接以數(shù)組整體的形式存在
push方法會(huì)直接修改原數(shù)組,返回值為加入元素后的新數(shù)組長(zhǎng)度
示例代碼
var testPushArr=[1,2]; testPushArr.push(3,[4,5]); console.log(testPushArr);//1,2,3,[4,5]
concat()
concat的元素會(huì)被打碎,非數(shù)組元素?zé)o法打碎,以整體形式加入,數(shù)組元素會(huì)被打碎,以單個(gè)元素的形式加入
concat方法不會(huì)修改原數(shù)組,而是連接之后返回一個(gè)新的數(shù)組,通常用arr = arr.concat(...)的形式來接收返回值,否則看不到修改效果
示例代碼
ar testConcatArr=[1,2]; var concatArr = testConcatArr.concat(3,[4,5]); console.log(concatArr );//1,2,3,4,5
下面是補(bǔ)充
注意 concat 拼寫,二者功能很相像,但有兩點(diǎn)區(qū)別。
先看代碼:
var arr = [];
arr.push(1);
arr.push([2, 3]);
arr.push(4, 5);
arr = arr.concat(6);
arr = arr.concat([7, 8]);
arr = arr.concat(9, 10);
arr.each(function(index, value){
alert(value);
});
alert 結(jié)果:
1 2,3 4 5 6 7 8 9 10
區(qū)別:
push 遇到數(shù)組參數(shù)時(shí),把整個(gè)數(shù)組參數(shù)作為一個(gè)元素;而 concat 則是拆開數(shù)組參數(shù),一個(gè)元素一個(gè)元素地加進(jìn)去。
push 直接改變當(dāng)前數(shù)組;concat 不改變當(dāng)前數(shù)組。
總結(jié):
如果想數(shù)組追加用concat,但是和java的replace一樣,用完記得arr1=arr1.concat(arr2)
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- js嵌套的數(shù)組扁平化:將多維數(shù)組變成一維數(shù)組以及push()與concat()區(qū)別的講解
- JavaScript使用concat連接數(shù)組的方法
- JavaScript字符串對(duì)象的concat方法實(shí)例(用于連接兩個(gè)或多個(gè)字符串)
- JS數(shù)組方法concat()用法實(shí)例分析
- JavaScript中使用concat()方法拼接字符串的教程
- 深入理解javascript中concat方法
- javascript使用 concat 方法對(duì)數(shù)組進(jìn)行合并的方法
- Javascript連接多個(gè)數(shù)組不用concat來解決
- js采用concat和sort將N個(gè)數(shù)組拼接起來的方法
- javascript中數(shù)組的concat()方法使用介紹
- javascript concat數(shù)組累加 示例
- JS Array創(chuàng)建及concat()split()slice()的使用方法
- 淺談JavaScript的push(),pop(),concat()方法
- JavaScript模擬數(shù)組合并concat
- JS數(shù)組降維的實(shí)現(xiàn)Array.prototype.concat.apply([], arr)
- JavaScript中concat復(fù)制數(shù)組方法淺析
- javascript數(shù)組中的concat方法和splice方法
- JavaScript的concat方法實(shí)例代碼(數(shù)組連接)
相關(guān)文章
下面就結(jié)合我自己的體會(huì)和所學(xué)習(xí)的東東和大家一起來學(xué)習(xí)在JS中如何使用面向?qū)ο蟮木幊獭?/div> 2011-08-08
javascript實(shí)現(xiàn)移動(dòng)端觸屏拖拽功能
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)移動(dòng)端觸屏拖拽功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-07-07
js實(shí)現(xiàn)簡(jiǎn)單選項(xiàng)卡功能
這篇文章主要為大家詳細(xì)介紹了使用JS實(shí)現(xiàn)簡(jiǎn)單的選項(xiàng)卡功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08
JavaScript實(shí)現(xiàn)飛機(jī)大戰(zhàn)游戲
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)飛機(jī)大戰(zhàn)游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
小程序scroll-view安卓機(jī)隱藏橫向滾動(dòng)條的實(shí)現(xiàn)詳解
這篇文章主要介紹了小程序scroll-view安卓機(jī)隱藏橫向滾動(dòng)條的實(shí)現(xiàn)詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-05-05
JavaScript實(shí)現(xiàn)數(shù)字?jǐn)?shù)組正序排列的方法
這篇文章主要介紹了JavaScript實(shí)現(xiàn)數(shù)字?jǐn)?shù)組正序排列的方法,涉及javascript中sort方法的使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04
js實(shí)現(xiàn)數(shù)組轉(zhuǎn)換成json
本文給大家分享的是使用javascript實(shí)現(xiàn)的數(shù)組轉(zhuǎn)換json的代碼,非常簡(jiǎn)單實(shí)用,相當(dāng)于JSON.stringify(array);,有需要的小伙伴可以參考下。2015-06-06最新評(píng)論

