JavaScript hat Getter mit Object.defineProperty
. Also kann ich einen Getter in der Eigenschaft random
von window
von
Ist es möglich, einen "universellen Getter" für ein bestimmtes Objekt zu definieren, unabhängig von der Objekteigenschaft? Ich suche etwas wie
%Vor%Kann ich "universal getters" in JavaScript verwenden?
Nein.
Es ist nicht möglich, in ECMAScript 5th edition als zu tun, da diese Operation nicht vorgesehen ist. Obwohl dies nicht explizit angegeben ist, kann man sehen, dass [GetProperty] enthält keine Vorkehrungen für nicht vorhandene Eigenschaften.
Die Getter / Setter in ECMAScript benötigen existierende Eigenschaften und es gibt kein Äquivalent von Rubys method_missing
oder Pythons __getattribute__
.
Leider: Nein, ist es nicht.
Es gibt etwas namens Proxy Objekte, die in Gecko 18-basierten Browsern eingeführt wurden
Was würde Ihnen erlauben, solche Dinge zu tun
%Vor%Aber das ist nicht Standard und immer noch sehr instabil
Übrigens dachte ich ursprünglich, Sie könnten Hier ein Beispiel zu JSBin Hinweis: Sie sollten es in Firefox window
direkt als lokale Variable in der IIFE verwenden, aber es scheint, dass Sie nicht nur undefined loggen können (warum?), also habe ich das "W"
Tags und Links javascript getter