Eine JavaScript WeakMap ( Ссылка ) erlaubt es Ihnen nicht Erhalte den Schlüssel oder die Länge oder Größe nach dem Design.
Ist es trotzdem möglich, Einträge irgendwie zu durchlaufen?
Wenn nicht ... wie macht die Chrome-Konsole das?
Ist es trotzdem möglich, Einträge irgendwie zu durchlaufen?
Nein, wie Sie sagen, ist der Inhalt von WeakMap
nicht vom Design her zugänglich, und es gibt keine Iterierbarkeit.
Wenn nicht ... wie macht die Chrome-Konsole das?
Die Konsole verwendet die Debugging-API der JS-Engine, die den Zugriff auf die Interna von Objekten ermöglicht (auch um Zustände zu versprechen, umwickelte Primitive usw.) und vieles mehr.
Sie können dieses kleine Snippet für universal forEach verwenden. Es verwendet jedoch lodash und kann stark erweitert werden.
%Vor%AKTUALISIEREN
Nach langer Zeit fand ich diese Antwort falsch. Die Sache ist ältere Version von core-js Polyfill-Bibliothek hat einen Fehler behoben, wo es native WeakMap Implementierung mit eigenen ersetzt. Also ist meine Lösung in modernen Browsern nicht gültig.
%Vor%Tags und Links javascript garbage-collection iterator weakmap