js操作数组,不修改原数组

JavaScript026

js操作数组,不修改原数组,第1张

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

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

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

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

基础用法链接:

slice

concat

Array.from()

... 扩展语句

数组的下标都是连续的,想要把一个数组的下标放到另一个数组中,只需要把这个数组的长度求出来就行了

例如数组 int[] a={1,2,3}存储数组a下标的数组int[] b ={0,1,2}代码如下:

int[] a ={1,2,3}

int count = a.length

int[] b = new int[count]

for(int i =0i<counti++)

{

b[i]=i

}

function TestArray() {

}

TestArray.prototype._array = new Array()

变为

function TestArray() {

this._array = []

}

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