关于遍历过程中向数组里增添对象,为什么增加的对象却是最后一次遍历的结果呢?
对象是引用类型,赋值的时候只是赋值了地址,所以你数组里4个对象都是同一个地址,即同一个对象
下面是可参考的示例:
constobj = {id: 0}
constarr = []
for(leti =0; i <4; i++) {
obj.id++
arr.push(JSON.parse(JSON.stringify(obj)))
}
console.log(arr)
关于遍历过程中向数组里增添对象,为什么增加的对象却是最后一次遍历的结果呢?
对象是引用类型,赋值的时候只是赋值了地址,所以你数组里4个对象都是同一个地址,即同一个对象
下面是可参考的示例:
constobj = {id: 0}
constarr = []
for(leti =0; i <4; i++) {
obj.id++
arr.push(JSON.parse(JSON.stringify(obj)))
}
console.log(arr)