Heim >Web-Frontend >Front-End-Fragen und Antworten >Was ist der Unterschied zwischen Javascript-Hostobjekten und integrierten Objekten?
Unterschied: 1. Integrierte Objekte sind eine Teilmenge nativer Objekte und gehören zu nativen Objekten, während Host-Objekte keine nativen Objekte der Engine sind. 2. Integrierte Objekte sind alle von der ECMAScript-Implementierung bereitgestellten Objekte, die davon unabhängig sind die Host-Umgebung, während Host-Objekte offiziell undefinierte ECMAScript-Objekte sind.
Die Betriebsumgebung dieses Tutorials: Windows 10-System, JavaScript-Version 1.8.5, Dell G3-Computer.
Zu den nativen Objekten gehören integrierte Objekte (Objekte, die bei der Initialisierung der JavaScript-Engine erstellt werden) und Objekte, die während der Ausführung von JavaScript dynamisch erstellt werden, während Hostobjekte dies sind Objekte, die von der JavaScript-Engine während der Ausführung erstellt werden, fügt die JavaScript-Hostumgebung (Laufzeitumgebung) über einen Mechanismus Objekte in die JavaScript-Engine ein.
Spezifische Unterschiede:
Eingebaute (eingebaute) Objekte: Objekte, die immer während der Ausführung erstellt werden In der Engine-Initialisierungsphase handelt es sich um eine native Teilmenge von Objekten. Integrierte Objekte werden von EcmaScript bereitgestellt und sind unabhängig von Hostobjekten, einschließlich globaler und mathematischer (numerischer Objekte) sowie integrierter Objekte.
Native (Naitve) Objekte: Zusätzlich zu integrierten Objekten enthält es auch einige Objekte die zur Laufzeit dynamisch erstellt werden. Native Objekte sind unabhängig von der Host-Umgebung, einschließlich Objekt, Array, Funktion, Zahl, Zeichenfolge, Datum
Host-Objekte: Host-Objekte sind keine nativen Objekte der Engine, sondern Objekte, die vom Host-Framework über einige in der JavaScript-Engine registriert werden Mechanismus. Die laufende Umgebung von Javascipt ist das Betriebssystem und der Browser, einschließlich zweier Arten von Hostobjekten, BOM und DOM 1. Native Objekte
ECMA-262 definiert native Objekte als „von ECMAScript-Implementierungen bereitgestellte Objekte, die unabhängig von der Hostumgebung sind“. ".
Einschließlich: Objekt, Funktion, Array, String, Boolescher Wert, Zahl, Datum, RegExp, Fehler, EvalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError, ActiveXObject (Server), Enumerator (Sammlungsdurchlaufklasse), RegExp (regulärer Ausdruck). )2. Integrierte Objekte
ECMA-262 definiert integrierte Objekte als „alle von der ECMAScript-Implementierung bereitgestellten Objekte, die unabhängig von der Hostumgebung sind und angezeigt werden, wenn die Ausführung des ECMAScript-Programms beginnt“. Dies bedeutet, dass der Entwickler das integrierte Objekt nicht explizit instanziieren muss, es ist bereits instanziiert.
Es ist außerdem „unabhängig von der Host-Umgebung“. ECMA-262 definiert nur zwei integrierte Objekte, nämlich Global und Math (sie sind auch native Objekte. Per Definition ist jedes integrierte Objekt ein natives Objekt)3. Host-Objekt
Was ist ein „Host“. Objekt"? Der „Host“ in ECMAScript ist natürlich die laufende Umgebung unserer Webseite, also das „Betriebssystem“ und der „Browser“.
BOM und DOM sind beide Hostobjekte. Weil es unterschiedliche Inhalte für unterschiedliche „Host“-Umgebungen anzeigt. Um es ganz klar auszudrücken: Die offiziell undefinierten Objekte von ECMAScript gehören zum Hostobjekt, da die meisten undefinierten Objekte Objekte sind, die von Ihnen selbst über das ECMAScript-Programm erstellt wurdenVerwandte Empfehlungen:Javascript-Lern-Tutorial
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Javascript-Hostobjekten und integrierten Objekten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!