评论

发现了微信开发工具公众号开发的一个问题,应该是BUG

发现了微信开发工具公众号开发的一个问题,应该是BUG,不可思议。

  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 这个字段的。

误导了我一下午

最后一次编辑于  05-16  
点赞 0
收藏
评论

3 个评论

  • Zy
    Zy
    10-10

    如果一定要看及时的对象数据,console.log 深拷贝后的对象 JSON.parse(JSON.stringify(xxx))

    10-10
    赞同
    回复
  • 石头
    石头
    07-02

    不是bug噢,你打印的是一个对象,引用类型,aaaaaaa1、aaaaaaa3都是指向一个对象,所以你后续改变该对象的属性,看到的自然一样。

    07-02
    赞同
    回复
  • Mr.Zhao
    Mr.Zhao
    05-16

    这是BUG?

    05-16
    赞同
    回复
登录 后发表内容