我在Firefox开发工具中遇到了一些不寻常的行为。使用lodash从对象中过滤某些元素后,控制台显示对该对象的前一个未过滤版本的引用,但仅在右侧窗格中显示。Firefox开发工具+ Chrome调试器控制台javascript对象引用的越野车显示
在左侧,它显示了2个元素,这是结果我的预期。右侧显示原始未过滤的17个元素。实际上,在我最近停止使用FB之前,我被迫切换到开发工具之前,我实际上已经遇到过这种情况。
如果没有人遇到过这种情况,我可以尝试将它提取为一个最小案例,但如果它是已知的错误,我更愿意解决它。
倾向于相信我的对象实际上是按左图所示过滤的,但这有点让人不安。
更新:
使用Firefox 51的Linux
浏览器其实就是做同样的事情。它显示了与array[2]
17种元素:
你确定你在两个地方都记录过滤版本吗? 'filter'不会改变你的数组,所以未过滤的数组仍然存在。 – SimpleJ
没有一个工作的例子很难帮助。控制台中的对象具有继承性,不是快照。试试JSON.stringify版本并比较 – charlietfl