当更改值新数组但旧数组不变时如何解构数组

时间:2018-09-12 17:23:33

标签: javascript

var a = [{a:'1'},{a:'2'},{a:'3'}];

var b = [... a];

b [0] .a = 2;

console.log(a)

//结果期望为b = [{a:'1'},{a:'2'},{a:'3'}];

//,但是实际结果是b = [{a:'2'},{a:'2'},{a:'3'}];

1 个答案:

答案 0 :(得分:0)

您必须在新数组中重新创建所有项目:

var b = a.map(i => { return { ...i } })