亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

javascript合并兩個(gè)數(shù)組最簡(jiǎn)單的實(shí)現(xiàn)方法

 更新時(shí)間:2019年09月14日 10:29:15   作者:彩虹の你  
這篇文章主要介紹了javascript合并兩個(gè)數(shù)組最簡(jiǎn)單的實(shí)現(xiàn)方法,方法很簡(jiǎn)單,有需要的朋友們可以學(xué)習(xí)下。

在開發(fā)的過(guò)程中,我們很多時(shí)候會(huì)遇到需要將兩個(gè)數(shù)組合并成一個(gè)數(shù)組的情況出現(xiàn)。

var arr1 = [1, 2, 3];
var arr2 = [4, 5, 6];

// 將arr1和arr2合并成為[1, 2, 3, 4, 5, 6]

這里總結(jié)一下在JavaScript中合并兩個(gè)數(shù)組的方法。

for循環(huán)數(shù)組

這個(gè)方式是最簡(jiǎn)單的,也是最容易實(shí)現(xiàn)的。

var arr3 = [];

// 遍歷arr1
for (var i = 0; i < arr1.length; i++) {
  arr3.push(arr1[i]);
}

// 遍歷arr2
for (var j = 0; j < arr2.length; j++) {
  arr3.push(arr2[j]);
}

console.log(arr3); // [1,2,3,4,5,6]

另外也可以用增強(qiáng)型for循環(huán)或forEach()方法去實(shí)現(xiàn)。

for循環(huán)這種方式幾乎沒(méi)有任何問(wèn)題,只是很多追求精簡(jiǎn)編程的人會(huì)鄙視這種方式(攤手)。

concat()方法

JavaScript的Array對(duì)象中提供了一個(gè)concat()方法,作用是連接兩個(gè)或更多的數(shù)組,并返回一個(gè)新的數(shù)組。

var arr3 = arr1.concat(arr2);

console.log(arr3); // [1,2,3,4,5,6]

要注意的是,concat()方法不會(huì)改變?cè)瓟?shù)組,而是返回一個(gè)新的數(shù)組。這樣,當(dāng)我們需要進(jìn)行多次數(shù)組合并的時(shí)候,就會(huì)造成內(nèi)存浪費(fèi)。

apply()方法

函數(shù)的apply方法有一個(gè)特性,那就是func.apply(obj,argv),argv是一個(gè)數(shù)組。所以我們可以利用這點(diǎn)。

arr1.push.apply(arr1, arr2);

調(diào)用arr1.push這個(gè)函數(shù)實(shí)例的apply()方法,同時(shí)把a(bǔ)rr1、arr2當(dāng)作參數(shù)傳入,這樣arr1.push這個(gè)方法就會(huì)遍歷arr1和arr2數(shù)組的所有元素,達(dá)到合并的效果。

簡(jiǎn)單理解就是,上面這段代碼可以看做是:

arr1.push(4, 5, 6);

這種方式只用一行代碼就解決了問(wèn)題,可以說(shuō)非常6了。

總結(jié)

上面三種方法在常規(guī)使用上其實(shí)并沒(méi)有區(qū)別,只是要另外注意兩個(gè)小問(wèn)題:

1.以上3種合并方法在舉例的時(shí)候并沒(méi)有考慮過(guò)兩個(gè)原數(shù)組誰(shuí)的長(zhǎng)度更小,好的做法是預(yù)先判斷兩個(gè)原數(shù)組哪個(gè)更大,然后使用大數(shù)組合并小數(shù)組,這樣就能減少了數(shù)組元素操作的次數(shù),提高了代碼的執(zhí)行效率。

2.有時(shí)候我們既不希望原數(shù)組(arr1、arr2)改變,又不想手動(dòng)新增一個(gè)變量,這時(shí)就只能使用concat()方法了。

以上方法很簡(jiǎn)單,感謝大家的學(xué)習(xí)和對(duì)腳本之家的支持。

相關(guān)文章

  • JavaScript交換兩個(gè)變量方法實(shí)例

    JavaScript交換兩個(gè)變量方法實(shí)例

    這篇文章主要介紹了JavaScript交換兩個(gè)變量方法實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • JavaScript實(shí)現(xiàn)好看的跟隨彩色氣泡效果

    JavaScript實(shí)現(xiàn)好看的跟隨彩色氣泡效果

    這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)好看的跟隨彩色氣泡效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • uniapp高頻面試題及答案合集

    uniapp高頻面試題及答案合集

    uni-app是一個(gè)使用Vue.js開發(fā)所有前端應(yīng)用的框架,開發(fā)者編寫一套代碼,可以發(fā)布到IOS、Android、Web(響應(yīng)式)、以及各種小程序、快應(yīng)用等多個(gè)平臺(tái),下面這篇文章主要給大家介紹了關(guān)于uniapp高頻面試題及答案的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • js實(shí)現(xiàn)iframe框架取值的方法(兼容IE,firefox,chrome等)

    js實(shí)現(xiàn)iframe框架取值的方法(兼容IE,firefox,chrome等)

    這篇文章主要介紹了js實(shí)現(xiàn)iframe框架取值的方法,可兼容IE,firefox,chrome等瀏覽器.涉及JavaScript針對(duì)框架元素取值的相關(guān)技巧,需要的朋友可以參考下
    2015-11-11
  • 使用JS代碼實(shí)現(xiàn)點(diǎn)擊按鈕下載文件

    使用JS代碼實(shí)現(xiàn)點(diǎn)擊按鈕下載文件

    有時(shí)候我們?cè)诰W(wǎng)頁(yè)上需要增加一個(gè)下載按鈕,讓用戶能夠點(diǎn)擊后下載頁(yè)面上的資料,那么怎樣才能實(shí)現(xiàn)功能呢?今天小編給大家分享兩種方法實(shí)現(xiàn)js實(shí)現(xiàn)點(diǎn)擊按鈕下載文件,需要的朋友參考下吧
    2016-11-11
  • javascript基礎(chǔ)知識(shí)之html5輪播圖實(shí)例講解(44)

    javascript基礎(chǔ)知識(shí)之html5輪播圖實(shí)例講解(44)

    這篇文章主要為大家詳細(xì)介紹了javascript基礎(chǔ)知識(shí)之html5輪播圖,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • 完美解決spring websocket自動(dòng)斷開連接再創(chuàng)建引發(fā)的問(wèn)題

    完美解決spring websocket自動(dòng)斷開連接再創(chuàng)建引發(fā)的問(wèn)題

    下面小編就為大家?guī)?lái)一篇完美解決spring websocket自動(dòng)斷開連接再創(chuàng)建引發(fā)的問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-03-03
  • NodeJS與Mysql的交互示例代碼

    NodeJS與Mysql的交互示例代碼

    實(shí)現(xiàn)NodeJS與Mysql的交互首先把Mysql Module裝到NodeJS中,具體實(shí)現(xiàn)及結(jié)果截圖如下,有此需求的朋友可以參考下,希望對(duì)大家有所幫助
    2013-08-08
  • JavaScript高級(jí)程序設(shè)計(jì) 閱讀筆記(二十) js錯(cuò)誤處理

    JavaScript高級(jí)程序設(shè)計(jì) 閱讀筆記(二十) js錯(cuò)誤處理

    語(yǔ)法錯(cuò)誤,也稱解析錯(cuò)誤,發(fā)生在傳統(tǒng)語(yǔ)言的編譯時(shí),在JavaScript中發(fā)生在解釋時(shí),運(yùn)行時(shí)錯(cuò)誤也稱為異常(exception,在編譯期/解釋器后)
    2012-08-08
  • javascript 方法覆寫實(shí)例代碼

    javascript 方法覆寫實(shí)例代碼

    以下頁(yè)面在運(yùn)行中,調(diào)試輸出的永遠(yuǎn)是alter('1'),原因是按照頁(yè)面加載從上至下的順序,同名的方法以最后一個(gè)為準(zhǔn).
    2009-01-01

最新評(píng)論