console.log('aaaaaaa1', queries);
console.log('aaaaaaa2', JSON.stringify(queries));
for (const p in queries) {
console.log('aaaaaaa21', p);
console.log('aaaaaaa22', queries[p]);
}
queries.other = {name:'zhangmao'};
console.log('aaaaaaa3', queries);
queries.other 是后来才赋的值
但在 aaaaaaa1 的打印中你会看到这个 other 已经有了,但这个 other 是将来后边的代码才会赋值的。怎么和 aaaaaaa3 打印的内容是一样的呢?
只能通过 aaaaaaa2 看出来是没有 other 这个字段的。
误导了我一下午
如果一定要看及时的对象数据,console.log 深拷贝后的对象 JSON.parse(JSON.stringify(xxx))
不是bug噢,你打印的是一个对象,引用类型,aaaaaaa1、aaaaaaa3都是指向一个对象,所以你后续改变该对象的属性,看到的自然一样。
这是BUG?