var arr_1:any = [];
var arr_2:any = [];
var a = {};
a["b"] = 1;
arr_1.push(a);
arr_2.push(arr_1[0]);
console.log("arr_1_init",arr_1);
console.log("arr_2_init",arr_2);
arr_2[0].b = 2;
console.log(">>>>>>>>");
同步输出,但是 对象属性值,是你点console展开时候的值, 你 打印的时候 用 JSON.stringify(arr_1) 就能看出来了
1赞
显然 第二个log改变了,第一个
这个一看就知道就是前端思维,学过后端应该都知道数组保存object保存的是指针,一个最简单的例子,难不成一个有100个字段的object保存到数组里面也会保存值?这样自问一下就明白了
原因是控制台会自动刷新数据,做一个定时器测试就能看到效果了,会随着对象变化,打印的信息会跟着更新
你这答非所问啊。
我回答的直接就是到点上,其他人才是答非所问
