js里面的array的引用问题

JavaScript014

js里面的array的引用问题,第1张

function TestArray() {

}

TestArray.prototype._array = new Array()

变为

function TestArray() {

this._array = []

}

//TestArray.prototype._array = new Array()去掉 这一行

js数组是引用类型的值,我们直接将原数组赋值给新的变量,由于指针指向同一个内存地址,修改数组,原数组也会被修改。

如果不想原数组被修改,可以采用以下方法:

此时,再修改copyList的值,不会影响list的值。

es6的Array.from()和扩展语句也可以复制数组,而不会继续引用原数组。

基础用法链接:

slice

concat

Array.from()

... 扩展语句