大家好,欢迎来到IT知识分享网。
需求:将多个数组进行拼接
const arr = [1, 2, 3, 4, ];
let arr1 = [5, 6];
let arr2 = [7, 8];
// 最终的结果是:
[1, 2, 3, 4, 5, 6, 7, 8]
方法1:concat
const newArr = arr.concat(arr1).concat(arr2)
console.log(newArr)// [1, 2, 3, 4, 5, 6, 7, 8]
newArr 是新数组,此时内存中存在arr,arr1,arr2,newArr 3个数组。
后面三个方法都不会创建新的数组
方法2:不创建新数组
arr1.forEach(i => {
arr.push(i)
})
arr2.forEach(i => {
arr.push(i)
})
arr1 = null;
arr2 = null;
console.log(arr) //[1, 2, 3, 4, 5, 6, 7, 8]
没有新的数组创建,对于内存来说更优。注意到结尾的arr1=null;arr2=null;拼接完成后将数组都清空。
方法3:apply(推荐)
arr.push.apply(arr, arr1);
arr.push.apply(arr, arr2);
console.log(arr) //[1, 2, 3, 4, 5, 6, 7, 8]
拼接两个数组的时候推荐用这种方法
方法4:es6的写法(推荐)
arr.push(…arr1, …arr2)
console.log(arr) //[1, 2, 3, 4, 5, 6, 7, 8]
拼接两个及以上数组的时候推荐用这种方法
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/30033.html