JavaScript的concat方法實(shí)例代碼(數(shù)組連接)
JavaScript concat() 方法
定義和用法
concat() 方法用于連接兩個(gè)或多個(gè)數(shù)組。
該方法不會(huì)改變現(xiàn)有的數(shù)組,而是返回一個(gè)新的數(shù)組。
用途: 合并2個(gè)或多個(gè)數(shù)組
變量名 | value1,value2,value3,…,valueN | |
---|---|---|
詳細(xì)描述 | 值或者數(shù)組(可以傳對(duì)象) | |
是否必傳 | 否 |
要注意,concat返回的是一個(gè)淺拷貝
示例:
1.連接2個(gè)數(shù)組
const arr = [1, 2, 3].concat([4, 5]) console.log(arr) // [1,2,3,4,5]
2.連接3個(gè)數(shù)組
const arr1 = [1, 2] const arr2 = [3, 4] const arr3 = [5, 6] const arr4 = arr1.concat(arr2, arr3) console.log(arr4) // [1, 2, 3, 4, 5, 6]
3.連接值到數(shù)組
const arr1 = [1, 2] const arr2 = 3 const arr3 = [5, 6] const arr4 = arr1.concat(arr2, arr3) console.log(arr4) // [1, 2, 3, 5, 6]
有趣的知識(shí)
talk is cheap,show you my code
const arr1 = [[1]] const arr2 = [3, 4] const arr3 = [5, 6] const arr4 = arr1.concat(arr2, arr3) console.log(arr4) // [[1], 3, 4, 5, 6] arr1[0].push(2) console.log(arr4) // [[1, 2], 3, 4, 5, 6]
const arr1 = [1] const arr2 = [3, 4] const arr3 = [5, 6] const arr4 = arr1.concat(arr2, arr3) console.log(arr4) // [1, 3, 4, 5, 6] arr1.push(2) console.log(arr4) // [1, 3, 4, 5, 6]
說點(diǎn)通俗點(diǎn),如果連接的數(shù)組中有引用類型,那么這個(gè)引用類型是共享的,其實(shí)吧,剛開始我說的返回的是淺拷貝,你就應(yīng)該懂了。
對(duì)象也是可以連的
const arr1 = [1] const arr2 = [3, 4] const arr3 = { a: 1, b: 2 } const arr4 = arr1.concat(arr2, arr3) console.log(arr4) // [1, 3, 4, {a:1, b:2}]
Symbol.isConcatSpreadable
對(duì)象有一個(gè)Symbol.isConcatSpreadable屬性,表示在使用concat方法是是否展開(注意這里是作為參數(shù)時(shí)是否展開)
- 數(shù)組是默認(rèn)展開的
- 對(duì)象是默認(rèn)不展開的
數(shù)組默認(rèn)展開
const arr1 = [1] const arr2 = [3, 4] const arr3 = arr1.concat(arr2) console.log(arr3) // [1, 3, 4] arr2展開了
const arr1 = [1] const arr2 = [3, 4] arr2[Symbol.isConcatSpreadable] = false const arr3 = arr1.concat(arr2) console.log(arr3) // [1,[3,4]] arr2沒有展開
對(duì)象默認(rèn)不展開
const arr1 = [1] const obj2 = { a: 1, b: 2 } const arr3 = arr1.concat(obj2) console.log(arr3) // [1,{a:1, b:2}] 對(duì)象默認(rèn)不展開
const arr1 = [1] const obj2 = { // 注意這個(gè)地方要加length屬性,如果你要展開的話 length: 2, 0: 2, 1: 3 } obj2[Symbol.isConcatSpreadable] = true const arr3 = arr1.concat(obj2) console.log(arr3) // [1,2,3]
字符串的concat方法
示例
const str1 = 'aa' const str2 = str1.concat('bb') console.log(str2) // aabb
到此這篇關(guān)于JavaScript的concat方法實(shí)例代碼()的文章就介紹到這了,更多相關(guān)js concat內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- JS數(shù)組合并push與concat區(qū)別分析
- 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方法
相關(guān)文章
原生JS實(shí)現(xiàn)圖片懶加載之頁面性能優(yōu)化
在項(xiàng)目開發(fā)中,我們往往會(huì)遇到一個(gè)頁面需要加載很多圖片的情況。這篇文章主要介紹了頁面性能優(yōu)化原生JS實(shí)現(xiàn)圖片懶加載 ,需要的朋友可以參考下2019-04-04JavaScript 就地編輯HTML節(jié)點(diǎn)實(shí)現(xiàn)代碼
JavaScript 就地編輯HTML節(jié)點(diǎn)實(shí)現(xiàn)代碼2009-07-07微信小程序?qū)崿F(xiàn)點(diǎn)擊空白隱藏的方法示例
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)點(diǎn)擊空白隱藏的方法示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Qt利用布局widget和ScrollArea實(shí)現(xiàn)抽屜效果(實(shí)例代碼)
這篇文章主要介紹了Qt利用布局,widget和ScrollArea實(shí)現(xiàn)抽屜效果,本文通過實(shí)例代碼圖文展示給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-07-07微信小程序?qū)崿F(xiàn)發(fā)動(dòng)態(tài)功能的示例代碼
最近做了一個(gè)校園拍賣小程序,想在里面添加一個(gè)類似校園圈功能,現(xiàn)在來一步一步實(shí)現(xiàn),對(duì)微信小程序?qū)崿F(xiàn)發(fā)動(dòng)態(tài)功能感興趣的朋友一起看看吧2022-08-08JavaScript常用數(shù)組去重實(shí)戰(zhàn)源碼
本文給大家分享js常用8種數(shù)組去重實(shí)戰(zhàn)源碼,針對(duì)每種方法通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-07-07當(dāng)某個(gè)文本框成為焦點(diǎn)時(shí)即清除文本框內(nèi)容
這篇文章主要介紹了當(dāng)某個(gè)文本框成為焦點(diǎn)時(shí)如何清除文本框內(nèi)容,需要的朋友可以參考下2014-04-04