JavaScript Primitive Wrapper Typen | Erklärt

JavaScript Primitive Wrapper Typen | Erklärt
Immer wenn ein primitiver Wert in einem Programm gelesen wird, erstellt JavaScript automatisch ein Objekt für den entsprechenden primitiven Typ, bekannt als der primitive Wrapper -Typ. Nach dem Erstellen des primitiven Wrapper -Typs ruft JavaScript die angegebene Methode auf und löscht die Instanz sofort aus dem Speicher. Auf diese Weise werden primitive Werte im Vergleich zu regulären Objekten als leicht angesehen.

JavaScript bietet primitive Wrapper -Typen für die “Saite","Nummer","boolean","Bigint", Und "SymbolDatentypen und erleichtert die Verwendung dieser primitiven Werte.

Diese Beschreibung erklärte JavaScript Primitive Wrapper -Typen, Schauen wir uns vorher die primitiven Datentypen an.

JavaScript primitiver Datentyp

Primitive Datentypen sind die vordefiniert oder eingebaut Datentypen, die von der JavaScript -Programmiersprache unterstützt werden. Es wird häufig als die niedrigste Ebene einer Computersprache implementiert.

Die primitiven Datentypen können weder ein Objekt noch die Methoden sein. Außerdem können primitive Werte nicht geändert werden, da sie sindunveränderlich“. Sie können eine Variable mit einem neuen primitiven Wert neu zuweisen, aber die vorhandenen nicht ändern.

JavaScript hat sieben primitive Datentypen: Nummer, boolean, Bigint, Saite, Symbol, Null, Und nicht definiert.

Der folgende Abschnitt zeigt die primitiven Datentypen im Detail.

String Primitive Datentyp

In JavaScript die “SaiteDer primitive Datentyp wird durch die Abfolge der in der Single hinzugefügten Zeichen dargestellt "oder doppelte Zitate "".

Beispiel

Sei String1 = 'Primitiver Datentyp';
typeof string1;

Ausgang

Zahlen -Primitive Datentyp

Sie können das nutzen “NummerPrimitive Datentypen zum Speichern von Dezimal- und Nicht-Dezimalwerten in JavaScript.

Beispiel

Sei Number1 = 090078601;
typeof number1;

Ausgang

Bigint Primitive Datentyp

Bigint" Und "NummerDaten sind ziemlich ähnlich; Bigint ermöglicht es Ihnen jedoch, die Ganzzahlwerte größer zu präsentieren als (253). Um einen bigint -primitiven Datentyp -Wert zu erstellen, “N”Wird am Ende der Nummer auf folgende Weise angehängt:

Beispiel

lass bigInteger = 99999999999988872553627n;
Typ von Biginteger;

Ausgang

Boolescher primitiver Datentyp

JavaScript "booleanDer primitive Datentyp umfasst zwei Werte: WAHR oder FALSCH.

Beispiel

booleanval = true;
typeof booleanval;

Ausgang

Symbol Primitive Datentyp

SymbolIst ein primitiver Datentypwert, der durch Aufrufen der “generiert werden kannSymbol"Funktion, die eine zurückgibt"einzigartig" Wert. Die Symbolfunktion akzeptiert eine Zeichenfolgebeschreibung als Argument, das beim Abrufen des Symbolwerts ausgedruckt wird.

Beispiel

sei z = symbol ("Wir haben einen Symbolwert erstellt");
Typof Z;

Ausgang

Undefined Primitive Datentyp

Der "nicht definiertDer primitive Datentyp bedeutet, dass eine Variable deklariert, aber noch nicht definiert ist.

Beispiel

lass y;
typeof y;

Ausgang

Null primitiver Datentyp

Null"Ist ein Datentyp, der zur Darstellung verwendet wird"fehlen" oder "Unbekannt" Werte. Der "Art der"Betreiber kehrt zurück"Objekt”Als die Art von“Null", aber erinnere dich, Null ist ein primitiver Wert, kein Objekt.

Beispiel

Sei x = null;
typeof x;

Ausgang

Zu diesem Zeitpunkt haben Sie verstanden, welche primitiven Datentypen sind. Jetzt erfahren wir das Konzept hinter dem Zugriff auf Eigenschaften oder Methoden primitiver Werte.

JavaScript Primitive Wrapper -Klasse

Primitive Datentypwerte können mithilfe der Objektnotation manipuliert werden. Zu diesem Zweck hat JavaScript entsprechende Objektklassen für jeden der primitiven Werte definiert, mit Ausnahme von “Null" Und "nicht definiert”. Diese primitiven Wrapper -Klassen werden berücksichtigt "Wrapper”Um die JavaScript -primitiven Datentypen.

Ein weiterer wichtiger Punkt ist, dass die Wrapper -Klassen sowohl extern als auch intern zum Speichern des gleichen Wertes verwendet werden. Die Fälle oder Objekte der Wrapper-Klassen bleiben jedoch im Falle einer expliziten Objekterklärung nicht primitiv.

JavaScript Primitive Wrapper -Objekt

Ein JavaScript Primitive Wrapper -Objekt umfasst primitive Werte und bietet zusätzlich Methoden und Eigenschaften zur Manipulation der Werte.

Zum Beispiel eine “SaiteDer primitive Wert wird in einem Objektkontext verwendet, wenn er auf seine zugehörigen Eigenschaften oder Methoden zugreift. In diesem Fall erzeugt JavaScript intern einen primitiven “VerpackungObjekt für diesen spezifischen String Primitive Wrapper -Typ. Anschließend wird der primitive String -Wert im erstellten String -Wrapper -Objekt hinzugefügt, der seine Methoden und Eigenschaften enthält. Dieses automatisch erstellte Wrapper -Objekt wird nach dem Aufrufen der angegebenen Methode oder Eigenschaft gelöscht.

JavaScript Primitive Wrapper -Objekte können auch manuell mit der “erstellt werdenneu" Operator. Diese Wrapper -Objekte bleiben im Speicher, bis ihr Zielfernrohr ausgeht. Auch die manuell erstellten primitiven Wrapper -Objekte sind von den “Objekt" Typ.

JavaScript Primitive Wrapper -Typ

Das automatisch erstellte JavaScript -Skript -Wrapper -Objekt wird als "bezeichnet"Primitiver Wrapper -Typ”. JavaScript bietet primitive Wrapper -Typen für die “Saite","Nummer","boolean","Bigint", Und "SymbolDatentypen und erleichtert die Verwendung dieser primitiven Werte.

Beispiel: JavaScript Primitive Wrapper -Typ

Im folgenden Beispiel das “das“Sprache"Variable enthält"JavaScript”Als sein primitiver Zeichenfolgewert. Diese Variable hat keinen Zugriff auf die “Substring ()" Methode; Es wird jedoch immer noch den Unterstring aus dem angegebenen primitiven Wert abgerufen:

lass Language = 'JavaScript';
Sei Str1 = Sprache.Substring (4);
Konsole.log ('Str1 -Wrapper -Typ ist:' + typeof str1);
Konsole.log (str1);

Ausgang

Der oben gegebene Code funktioniert perfekt, und jetzt müssen Sie sich fragen, wie die “Sprache"Variable hat die" aufgerufen "Substring ()Methode, die der String -Klasse zugeordnet ist?

Die Antwort auf diese Frage ist, dass wenn Sie eine Methode mit einem primitiven Wert aufrufen. JavaScript erstellt automatisch eine “Objekt"Gemäß dem entsprechenden primitiven Datentyp", "Saite“. Danach ruft es die angegebene Methode mit Hilfe der erstellten Instanz auf und löscht die Instanz dann sofort aus dem Speicher.

Technisch gesehen entspricht unser ausgeführtes Programm diesem Code:

lass Language = 'JavaScript';
// wenn Sprache.Substring (4) wird aufgerufen;
Sei TMP = New String (Sprache);
STR1 = TMP.Substring (4);
Konsole.log (str1);
tmp = null;

Die Ausführung des oben gegebenen Programms zeigt auch dieselbe Ausgabe:

Lassen Sie uns nun den Unterschied zwischen überprüfen Handbuch primitiver Wrapperobjekt Und Automatisches primitives Wrapper -Objekt (primitiver Wrapper -Typ).

Manuelles primitives Wrapper -Objekt gegen automatische primitive Verpackungsobjekt

Wie bereits erwähnt, ermöglicht JavaScript Sie, primitive Wrapper -Objekte manuell mit dem zu erstellen neu Operator. Im Gegensatz zu primitiv.

Beispiel: Manuelles primitives Wrapper -Objekt gegen automatische primitive Wrapper -Objekt

Im folgenden Beispiel erstellen wir ein manuelles primitives Wrapper-Objekt mit dem Namen “STR1" Verwendung der "neuOperator und String () Wrapper -Klasse -Konstruktor:

str1 = new String ('JavaScript');
Konsole.log (typeof str1);
Konsole.log (str1);

Die Ausgabe bedeutet, dass wir erfolgreich eine erstellt haben “Objekt"Haben"Saite"Prototyp, der gespeichert"JavaScript”Als primitiver Zeichenfolgewert:

Während im Fall von automatisch erstellten primitiven Wrapper -Objekt oder primitiver Wrapper -Typ der Bereich auf eine einzelne aufgerufene Eigenschaft und Methode beschränkt ist:

Sei Str1 = 'JavaScript';
STR1.Sprache = 'es6';
Konsole.log (str1.Sprache);

Hier haben wir zuerst eine Variable erstellt “STR1"Mit einem string primitiven Wert"JavaScript”Im obigen Beispiel. Nach dem Lesen des primitiven Wertes generiert JavaScript ein neues Zeichen für ein Zeichenfolge oder ein primitiver Wrapper -Typ für “STR1“. Als nächstes das "STR1.Sprache = 'ES6'Befehl "Befehl versucht, auf die Spracheigenschaft des" zuzugreifen "STR1Zeichenfolge und Wert zu ihm zuweisen.

Der "SpracheIm Gedächtnis existiert bis zu diesem Zeitpunkt Eigentum. Daher ist die Ausgabe zurückgegeben “nicht definiert"Anstelle des Wertes, der in" gespeichert ist "STR1.SpracheWenn die nächste Zeile ausgeführt wird:

Wir haben alle wesentlichen Informationen im Zusammenhang mit dem zusammengestellt Primitive Wrapper -Typen Und primitive Objekte In JavaScript.

Abschluss

JavaScript bietet primitive Wrapper -Typen für die “Saite","Nummer","boolean","Bigint", Und "SymbolDatentypen und erleichtert die Verwendung dieser primitiven Werte. Die primitiven Wrapper -Typen werden auch automatisch erstellte primitive Wrapper -Objekte bezeichnet, da sie automatisch erstellt werden, wenn die JavaScript -Engine einen primitiven Wert liest. Diese Objekte werden nach dem Aufrufen der angegebenen Methode oder Eigenschaft sofort gelöscht. Diese Beschreibung erklärte JavaScript Primitive Wrapper -Typen mit Hilfe geeigneter Beispiele.