我在chrome的控制台中发现了这种奇怪的行为,并且想知道它是否是故意的,如果是的话,它的目的是什么。
示例:
让我们从您期望的行为开始。从上图开始,单击“对象”行旁边的箭头展开它。然后,您可以将其保持打开状态或重新关闭它。重要的是你展开一次。现在继续:
正如您所看到的,我们更改了某个对象的键的值,但是上面打印出来的对象不会像我们预期的那样受到我们的更改的影响。
现在清除您的控制台并开始实验。键入相同的行以创建对象“o”并使用循环填充其属性。但是,这一次不展开了关键线上的对象。而是直接继续使用更改属性“x7”的值的下一个命令。只有在这样做之后才能回到展开关键线上的对象。一个不错的惊喜将等着你:
未来改变了过去!
答案 0 :(得分:4)
这里没有神秘感。在扩展时检索属性。在中更改了下面的属性之后,您在对对象的引用上进行了扩展。