JavaScript-globale Referenzhandbuch
JavaScript-globale Eigenschaften und Funktionen sind für alle eingebauten JavaScript-Objekte verfügbar.
JavaScript-globale Eigenschaften
Eigenschaft | Beschreibung |
---|---|
Infinity | Stellt den numerischen Wert unendlich groesser oder kleiner als null dar. |
NaN | Wert "Nicht-eine-Zahl" ("Not-a-Number"). |
undefined | Stellt dar, dass eine Variable noch nicht zugewiesen wurde. |
JavaScript-globale Funktionen
Funktion | Beschreibung |
---|---|
decodeURI() | Dekodieren Sie die URI. |
decodeURIComponent() | Dekodieren Sie die URI-Komponenten. |
encodeURI() | Kodieren Sie die URI. |
encodeURIComponent() | Kodieren Sie die URI-Komponenten. |
escape() | In Version 1.5 ist es obsolet.Verwenden Sie encodeURI() oder encodeURIComponent() Ersetzen. |
eval() | Evaluieren Sie einen String und führen Sie ihn wie Skriptcode aus. |
isFinite() | Bestimmt, ob ein Wert ein begrenztes gültiges Nummer ist. |
isNaN() | Bestimmt, ob ein Wert ein ungültiges Nummer ist. |
Number() | Konvertiert den Wert eines Objekts in eine Zahl. |
parseFloat() | Parsen Sie einen String und geben Sie eine Fließkommazahl zurück. |
parseInt() | Parsen Sie einen String und geben Sie eine Ganzzahl zurück. |
String() | Konvertiert den Wert eines Objekts in einen String. |
unescape() | In Version 1.5 ist es obsolet.Verwenden Sie decodeURI() oder decodeURIComponent() Ersetzen. |
Funktion oder Methode?
Es hat Bedeutung, globale Funktionen anstelle von globalen Methoden aufzurufen, da Funktionen global aufgerufen werden, nicht von einem bestimmten Objekt.
Unabhängig davon können Sie diese Funktionen aufrufen, da sie Methoden des globalen Objekts in ihrem Laufumgebung sind. Im Webbrowser ist das globale Objekt das Browserfenster. Daher ist isNaN() tatsächlich eine Fenstermethode: window.isNaN().
Beschreibung des globalen Objekts
Das globale Objekt ist ein vordefiniertes Objekt, das als Platzhalter für die globalen Funktionen und Attribute von JavaScript dient. Durch die Verwendung des globalen Objekts können alle anderen vordefinierten Objekte, Funktionen und Attribute aufgerufen werden. Das globale Objekt ist kein Attribut eines anderen Objekts, daher hat es keinen Namen.
In der Oberfläche von JavaScript-Code kann das globale Objekt mit dem Schlüsselwort this referenziert werden. Dies ist jedoch in der Regel nicht erforderlich, da das globale Objekt der Kopf der Scope-Chain ist, was bedeutet, dass alle nicht qualifizierten Variablen- und Funktionsnamen als Eigenschaften dieses Objekts abgefragt werden. Zum Beispiel wird, wenn JavaScript-Code die parseInt()-Funktion referenziert, die parseInt-Eigenschaft des globalen Objekts referenziert. Das bedeutet, dass das globale Objekt der Kopf der Scope-Chain ist, was bedeutet, dass alle in der Oberfläche von JavaScript-Code erklärten Variablen als Eigenschaften des globalen Objekts werden.}
Das globale Objekt ist nur ein Objekt und keine Klasse. Es gibt keinen Konstruktor und es ist nicht möglich, ein neues globales Objekt zu instanziieren.
Wenn JavaScript-Code in einem speziellen Umfeld eingebettet wird, haben die globalen Objekte in der Regel umgebungsbezogene Eigenschaften. Tatsächlich gibt die ECMAScript-Norm nicht vor, welche Art von globalen Objekten vorgesehen ist, und die Implementierung oder das Einfügen von JavaScript kann jedes beliebige Objekt als globales Objekt verwenden, solange dieses die hier aufgelisteten grundlegenden Eigenschaften und Funktionen definiert. Zum Beispiel wird das globale Objekt in einer Implementierung von JavaScript, die durch LiveConnect oder ähnliche Technologien Java skripten kann, mit den hier aufgelisteten java- und Package-Eigenschaften sowie der getClass()-Methode ausgestattet. Und im Client-JavaScript ist das globale Objekt das Window-Objekt, das das Webbrowserfenster darstellt, in dem JavaScript-Code ausgeführt werden kann.
Beispiel
In der Kernsprache JavaScript sind die vorgegebenen Eigenschaften des globalen Objekts nicht auflösbar. Alle mit for/in durchsuchbaren explizit oder implizit erklärten globalen Variablen können wie folgt aufgelistet werden:
var variables = ""; for (var name in this) { variables += name + "<br />"; } document.write(variables);