Heim > Artikel > Web-Frontend > Eine kurze Diskussion über Null- und undefinierte_Javascript-Techniken in JavaScript
Lassen Sie uns zunächst über Null sprechen, das einen besonderen Wert darstellt und häufig zur Beschreibung von „Nullwert“ verwendet wird. Führen Sie eine Art Operation für Null aus und das Ergebnis gibt die Zeichenfolge „Objekt“ zurück. Mit anderen Worten, Null kann als spezieller Objektwert betrachtet werden, was „Nicht-Objekt“ bedeutet (es fühlt sich seltsam an). Tatsächlich wird null normalerweise als das einzige Mitglied seines eigenen Typs betrachtet, das Zahlen, Zeichenfolgen und Objekte als „wertlos“ darstellen kann.
JavaScript verfügt außerdem über einen zweiten Wert, der die Leerstelle des Werts darstellt. Der undefinierte Wert wird zur Darstellung eines tieferen „Nullwerts“ verwendet. Es gibt 4 Situationen, in denen undefiniert auftritt: ① Wenn eine Variable deklariert, aber nicht initialisiert wird ② Wenn die abzufragende Objekteigenschaft oder das abzufragende Array-Element nicht existiert ③ Wenn die Funktion keinen Rückgabewert hat, wird undefiniert zurückgegeben ④ Der Wert von a Wenn auch auf einen Funktionsparameter verwiesen wird, der keine tatsächlichen Parameter bereitstellt, wird er nur undefiniert.
Die beiden sind ähnlich: ① Wie bereits erwähnt, handelt es sich bei beiden um „falsche Werte“, was bedeutet, dass sie in „falsch“ konvertiert werden, wenn JavaScript die Verwendung eines booleschen Werts erwartet. ② Keiner von ihnen enthält Attribute und Methoden.
Der Unterschied zwischen den beiden: ①null ist ein Schlüsselwort in der JavaScript-Sprache, während undefiniert eine von JavaScript vordefinierte globale Variable und kein Schlüsselwort ist. Darüber hinaus ist undefiniert in ECMAScript 3 eine lesbare und beschreibbare Variable, der ein beliebiger Wert zugewiesen werden kann. Dieser Fehler wurde in ECMAScript 5 behoben. In dieser Version ist undefiniert schreibgeschützt (siehe aktuelle Erklärung im Internet). Unterstützen Sie grundsätzlich ECMAScript 5. Ich weiß nicht, warum es keinen Fehler gibt, wenn ich undefiniert im Browser einen Wert zuweise, aber sein Wert nicht geändert wird. ② Wenn der Typ der Operation ausgeführt wird, gibt null die Zeichenfolge „Objekt“ zurück. und undefiniert gibt die Zeichenfolge „undefiniert“ zurück.
Was den Vergleich von null und undefiniert betrifft, gibt null == undefiniert „wahr“ zurück, null === undefiniert gibt „falsch“ zurück. Sie können sich undefiniert als eine freie Stelle vorstellen, die einen unerwarteten oder fehlerähnlichen Wert auf Systemebene darstellt, und null als eine freie Stelle, die einen normalen oder erwarteten Wert auf Programmebene darstellt. Wenn Sie sie Variablen oder Eigenschaften zuweisen oder als Parameter an Funktionen übergeben möchten, verwenden Sie am besten null.
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er gefällt Ihnen allen.