JavaScript的concat方法實例代碼(數組連接)
JavaScript concat() 方法
定義和用法
concat() 方法用于連接兩個或多個數組。
該方法不會改變現有的數組,而是返回一個新的數組。
用途: 合并2個或多個數組
| 變量名 | value1,value2,value3,…,valueN | |
|---|---|---|
| 詳細描述 | 值或者數組(可以傳對象) | |
| 是否必傳 | 否 |
要注意,concat返回的是一個淺拷貝
示例:
1.連接2個數組
const arr = [1, 2, 3].concat([4, 5]) console.log(arr) // [1,2,3,4,5]
2.連接3個數組
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.連接值到數組
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]
有趣的知識
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]
說點通俗點,如果連接的數組中有引用類型,那么這個引用類型是共享的,其實吧,剛開始我說的返回的是淺拷貝,你就應該懂了。
對象也是可以連的
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
對象有一個Symbol.isConcatSpreadable屬性,表示在使用concat方法是是否展開(注意這里是作為參數時是否展開)
- 數組是默認展開的
- 對象是默認不展開的
數組默認展開
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沒有展開
對象默認不展開
const arr1 = [1]
const obj2 = {
a: 1,
b: 2
}
const arr3 = arr1.concat(obj2)
console.log(arr3) // [1,{a:1, b:2}] 對象默認不展開const arr1 = [1]
const obj2 = {
// 注意這個地方要加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到此這篇關于JavaScript的concat方法實例代碼()的文章就介紹到這了,更多相關js concat內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- JS數組合并push與concat區(qū)別分析
- js嵌套的數組扁平化:將多維數組變成一維數組以及push()與concat()區(qū)別的講解
- JavaScript使用concat連接數組的方法
- JavaScript字符串對象的concat方法實例(用于連接兩個或多個字符串)
- JS數組方法concat()用法實例分析
- JavaScript中使用concat()方法拼接字符串的教程
- 深入理解javascript中concat方法
- javascript使用 concat 方法對數組進行合并的方法
- Javascript連接多個數組不用concat來解決
- js采用concat和sort將N個數組拼接起來的方法
- javascript中數組的concat()方法使用介紹
- javascript concat數組累加 示例
- JS Array創(chuàng)建及concat()split()slice()的使用方法
- 淺談JavaScript的push(),pop(),concat()方法
- JavaScript模擬數組合并concat
- JS數組降維的實現Array.prototype.concat.apply([], arr)
- JavaScript中concat復制數組方法淺析
- javascript數組中的concat方法和splice方法
相關文章
bootstrapValidator bootstrap-select驗證不可用的解決辦法
這篇文章主要為大家詳細介紹了bootStrapValidator和bootStrap-select驗證不可用的解決辦法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-01-01

