不知道为啥是这个结果,为什么不是顺序执行

FE_前端女孩
  • 8
    var a = {name: 111};
    console.log(a);
    a.age = 28;


clipboard.png

回复
阅读 1.1k
3 个回答

这是浏览器处理的
console.log(a);在展开的时候旁边有个i提示,意思是展示的内容被修改过了

var a = {name: 111};
console.log(JSON.stringify(a));
a.age = 28;
console.log(JSON.stringify(a));

这个是浏览器的机制问题。
console.log() 你不点开这个object的情况下可以看到只有一个值name,而在你点开这个Object的时候,在浏览器中总是输出最新的值(见下图):

clipboard.png

你会发现折叠开Object后旁边出现如图所示的标志(此值刚刚被修改过)。

console.log 是异步执行

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏