JavaScript 对象或数组赋值不改变原对象或数组

 

JavaScript 中对象或数组的赋值是默认引用赋值的,使得改变对象时,原对象跟着改变,

如果你想要复制赋值,则必须要重新分配对象,使用如下代码即可避免此问题:

1、对象 Object.assign({}, object)

let a = {'name': 'lily'};

var b = Object.assign({}, a);

b.name = 'lisa';

console.log(a.name);

 

a.name 的值不再发生变化

 

 

2、数组 array.slice()

var a = ['qqq','www','eee'];

var b = a.slice();

b.push('rrr');

console.log(a);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章