Werden die nativen JavaScript-Konstruktoren/Funktionen wie Function
, Object
, Array
immer in jedem Bereich verfügbar sein? Werden sie vom globalen Objekt oder etwas auf der gleichen Ebene oder sogar höher geerbt?Sind native JavaScript-Funktionen etwas "superglobales" -ähnliches?
Als Beispiel enthält MooTools die folgende Zeile in seiner Selbst ausgeführte Funktion:
var Function = this.Function;
Ich fragte mich also, gibt es eine Situation, in der diese einheimischen Konstrukteuren nicht mehr zur Verfügung? Vielleicht auf Serverseite oder striktem JS? Oder ist es nur eine Frage der Performance, eine lokale Referenz zu cachen? Aber wenn ja, warum nicht auf diese Weise:
var Function = Function;
Die nativen Konstruktoren sind globale Objekte (Eigenschaften des globalen Objekts), also ja, sie sind immer verfügbar. –
@ ŠimeVidas, das ist nicht ewig wahr. Ich kann sie leicht überschreiben, z. 'Funktion = 6;' Es gibt knifflige Wege, um darauf zu verweisen, aber die globalen Referenzen können auf diese Weise verloren gehen. – davin