如何迭代弱图?

com*_*ike 16 javascript garbage-collection iterator weakmap

javascript WeakMap(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap)不允许您按设计获取密钥或长度或大小.

是否有可能以某种方式循环条目?

如果没有.. Chrome控制台如何执行此操作?

在此输入图像描述

Ber*_*rgi 23

是否有可能以某种方式循环条目?

不,正如您所说,a的内容WeakMap无法通过设计访问,也没有可迭代性.

如果不是...... Chrome控制台如何执行此操作?

控制台使用JS引擎的调试API,它允许访问对象的内部(也包括承诺状态,包装的基元等)等等.

  • 自从我读到这个答案后,我开始注意到 Chrome 控制台中有更多奇怪的魔法。在极少数情况下,控制台在尝试跟踪代码时也可以输出未来的数据:-) (2认同)
  • @commonpike:[这里](http://stackoverflow.com/q/23392111/1048572)解释了该特定行为。 (2认同)
  • 这些看起来像是相对于过去的未来价值,而不是现在的价值。:} (2认同)

Fra*_*ger 5

事情正在发生变化,由于弱引用,很快就可以创建可迭代的周地图。请参阅tc39 weakrefs 提案中的可迭代 WeakMap 示例

(请注意,nodejs v12.?.? 已经可以使用--harmony-weak-refs标志了)