Heim > Artikel > Web-Frontend > Analyse grundlegender Verpackungstypen in JavaScript
Grundverpackungstypen sind spezielle Referenztypen. Immer wenn ein Basistypwert gelesen wird, wird im Hintergrund ein entsprechendes Objekt des Basisverpackungstyps erstellt, sodass Attribute und Methoden für nachfolgende Vorgänge aufgerufen werden können.
ECMAScript bietet außerdem drei grundlegende Verpackungstypen: Zahl, Zeichenfolge und Boolean.
Wir schreiben häufig Code wie diesen. Variablen vom Basistyp können als Objekte zum Aufrufen von Eigenschaften und Methoden verwendet werden, aber dies ist kein echtes Objekt, sondern nur eine Variable. also dieses Warum?
1 var str = "hello world"; 2 console.log(str.length); // 11 3 console.log(str.toUpperCase());// HELLO WORLD
Um die Manipulation grundlegender Datentypwerte zu erleichtern, erstellt der grundlegende Datentypwert in JavaScript tatsächlich einen entsprechenden grundlegenden Wrapper-Typ Objekt im Hintergrund , außer null und undefiniert, alle Grundtypen haben entsprechende Verpackungstypen.
Mit dem obigen Code führt der Hintergrund automatisch die folgende Verarbeitung durch:
Beim Ausführen der zweiten Zeile:
Erstellen Sie eine Instanz des Strings Typ;
Das angegebene Attribut für die Instanz aufrufen
Diese Instanz zerstören; Führen Sie die ersten drei Zeilen aus:
Erstellen Sie eine Instanz des String-Typs.
Rufen Sie die angegebene Methode für die Instanz auf
string | String |
Nummer | Nummer |
Boolescher Typ (true). , false) | Boolean |
Das ist nicht der Fall Der Verpackungstyp, der die Methode bereitstellt, aber das Javascript-Engine-Backend hat eine Instanz (Objekt) erstellt, die dem Basisverpackungstyp entspricht.
string | String |
number | Number |
布尔类型(true、false) | Boolean |
Immer wenn ein Basistypwert gelesen wird, wird ein entsprechender Basisverpackungstyp erstellt Im Hintergrund wird ein Objekt erstellt, z. B.:
Der Unterschied zwischen Referenztypobjekten und Basisverpackungstypobjekten
Das Wichtigste Der Unterschied besteht darin, dass die Lebenszyklen dieser beiden Objekte unterschiedlich sind.
Durch den obigen Codeblock wissen wir, dass das vom Basisverpackungstyp automatisch erstellte Objekt beim Aufruf des Objekts vorhanden ist und nach Abschluss des Aufrufs zerstört wird Neues Schlüsselwort, das Objekt ist derzeit im Gültigkeitsbereich vorhanden.
1 var str = new String("hello world"); 2 str.length; 3 str = null;Der obige Code fügt das Altersattribut zur Zeichenfolge s hinzu, aber wenn der Code in der dritten Zeile ausgeführt wird, wurde das Namensattribut zerstört Code wird in der dritten Zeile ausgeführt. Beim Ausführen wird eine weitere String-Instanz erstellt, aber diese Instanz verfügt nicht über das Altersattribut, daher ist die Ausgabe undefiniert; >Zusammenfassung1. Alle Basisdatentypen werden Basisverpackungstypen mit demselben Namen zugeordnet (außer null und undefiniert).
2. Beim Lesen eines Basistypwerts wird ein entsprechendes Basisverpackungstypobjekt erstellt, wodurch Datenoperationen erleichtert werden.
3. Sobald das Objekt der Basisverpackungsklasse ausgeführt wird, wird es sofort zerstört.
Das obige ist der detaillierte Inhalt vonAnalyse grundlegender Verpackungstypen in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!