JS 数组克隆方法总结

Posted makai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS 数组克隆方法总结相关的知识,希望对你有一定的参考价值。

ES5 方法总结

1.slice

let arr = [2,4,434,43]
let arr1= arr.slice()
arr[0] = ‘a‘
console.log(arr,arr1) // [ 2, 4, 434, 43 ]
console.log(arr1 === arr) // false

2. 遍历数组

Array.prototype.clone = function()
    let a=[];
    for(let i=0,l=this.length;i<l;i++) 
        a.push(this[i]);
    
    return a;

let arr = [‘aaa‘,‘bbb‘,‘ccc‘,‘wwwww‘,‘ddd‘]
let arr2 = arr.clone()
console.log(arr2)
console.log( arr2 === arr )

3. concat()

    return [].concat(this); 
    //或者 return this.concat();

let arr = [‘aaa‘,‘asss‘]
let arr1 = arr.clone()
arr[0] = 123
console.log(arr,arr1)

ES6 方法总结

1. Object.assign() 浅复制,也可以实现数组的克隆

let arr = [‘sdsd‘,123,123,123]
let arr1 = []
Object.assign(arr1,arr)
arr[1] = ‘aaaa‘
console.log(arr,arr1) // [ ‘sdsd‘, ‘aaaa‘, 123, 123 ] [ ‘sdsd‘, 123, 123, 123 ]

 2. 扩展运算符

const a1 = [1, 2];
// 写法一
const a2 = [...a1];
a1[0] = ‘aaa‘
console.log(a1,a2)
 
欢迎补充其他方法!!!

以上是关于JS 数组克隆方法总结的主要内容,如果未能解决你的问题,请参考以下文章

Dart 中常用的数组操作方法总结

数组方法总结 常用数组方法总结 js的数组或对象常用方法总结

js数组方法总结

js中数组常用的方法总结汇总

js中数组去重方法总结

JavaScrpt超详细的js数组方法(总结)