Why will ES6 WeakMap’s not be enumerable?

Finally found the real answer: http://tc39wiki.calculist.org/es6/weak-map/

A key property of Weak Maps is the inability to enumerate their keys. This is necessary to prevent attackers observing the internal behavior of other systems in the environment which share weakly-mapped objects. Should the number or names of items in the collection be discoverable from the API, even if the values aren’t, WeakMap instances might create a side channel where one was previously not available.

Leave a Comment