Unterschiede zwischen Undefined und Null
In JavaScript sind Variablen wie eine Fernbedienung, die das Objekt tatsächlich steuert. Wenn die Fernbedienung nicht zur Steuerung eines der Objekte programmiert ist, kann sie als Undefiniert markiert werden. Wenn die Fernbedienung dagegen so programmiert ist, dass sie nichts tut, kann sie Null zugewiesen werden. Null ist ein Zuweisungswert, der einer Variablen als Repräsentation ohne Wert zugewiesen werden kann. Undefiniert ist ein Typ selbst, während null ein Objekt ist. Undefiniert ist also ein spezieller Typ, während Null ein Objekt in JavaScript ist.
Unter dem JavaScript-Code-Snippet wird angezeigt, dass die Ausgabe undefiniert ist.
var x;
console.log (x); ð undefiniert |
Wenn jemand den Typ null überprüft, wird die Ausgabe als "Objekt" gedruckt, wie im folgenden JavaScript-Code-Snippet gezeigt:
console.log (typeof null);
ð Objekt |
Wir können also sagen, dass Undefiniert eine Variable bedeutet, die deklariert wurde, deren Wert jedoch noch nicht definiert wurde. Undefiniert ist vom Typ "undefiniert". Dies kann unter dem JavaScript-Code-Snippet überprüft werden:
var test;
Console.log (Testtyp); ð undefiniert |
Man kann auch eine Variable deklarieren und sie dann wie folgt „undefiniert“ zuweisen:
var test = undefiniert;
Console.log (Test); ð undefiniert |
Nicht zugewiesene Variablen werden von JavaScript mit dem Standardwert undefined initialisiert, während JavaScript einen Wert nie automatisch auf null setzt. Dies muss programmgesteuert erfolgen.
Head to Head Vergleich zwischen Undefined und Null
Ist unten der obere 8 Vergleich zwischen Javascript undefined gegen Null
Hauptunterschiede zwischen Javascript Undefined und Null
Sowohl Undefined als auch Null sind beliebte Optionen auf dem Markt. Lassen Sie uns einige der Hauptunterschiede zwischen Undefined und Null diskutieren:
- Undefiniert bedeutet, dass eine Variable deklariert wurde, aber noch kein Wert zugewiesen wurde.
- "Null" ist ein Zuweisungswert, der "kein Wert" bedeutet.
- "Undefined" und "null" sind beide Grundelemente.
- "Undefined" ist vom Typ undefined.
- "Null" ist vom Typ Objekt.
- JavaScript setzt niemals einen Wert auf "null". Es wird von Programmierern verwendet, um anzuzeigen, dass ein "var" keinen Wert hat.
- JavaScript hat eine nicht zugewiesene Variable mit dem Standardwert "undefined" festgelegt.
- "Undefined" ist kein gültiger Wert in JSON (JavaScript Object Notation), während "null" ein gültiger Wert in JSON ist.
- Man kann überprüfen, ob eine Variable undefiniert ist mit: Variablentyp === "undefiniert"
- So können Sie überprüfen, ob eine Variable null ist: variable === null
- Der Gleichheitsoperator behandelt sie als gleich, während der Identitätsoperator sie nicht als gleich behandelt. null === undefined // false null == undefined // true
- Der Wert "null" steht für das absichtliche Fehlen eines Objektwerts. Dies ist einer der Grundwerte von JavaScript.
- Null wird mit einem Literal geschrieben: "null". Es ist kein Bezeichner für die Eigenschaft eines globalen Objekts, wie es "undefiniert" sein kann. "Null" gibt die fehlende Identifikation an, bedeutet, dass eine Variable auf kein Objekt verweist.
- "Undefined" ist eine globale Variable, die JavaScript zur Laufzeit erstellt.
- Wenn eine arithmetische Konvertierung für "null" durchgeführt wird und der ermittelte Wert 0 ist, kann diese Konvertierung überprüft werden: var v1 = 3 + null; console.log (v1); //3
- "Undefined" führt keine arithmetische Konvertierung durch wie "null". Wenn wir versuchen, sie zu einer Zahl hinzuzufügen, erhalten Sie einen NaN-Fehler (Not-a-Number).
Vergleichstabelle Undefined vs Null
Unten ist die Liste der Punkte, Beschreiben Sie den Vergleich zwischen Javascript Undefined vs Null
Vergleichsbasis zwischen Undefined und Null | Nicht definiert | Null |
Definition | Variable wurde deklariert, aber noch kein Wert zugewiesen | Zuweisungswert, der "kein Wert" bedeutet |
Art | Nicht definiert | Objekt |
JSON | Ungültig | Gültig |
Natur | Variable deklariert, aber noch nicht zugewiesen | Stellen Sie das absichtliche Fehlen eines Objektwerts dar |
Prüfen | typeof variableName === "undefined" | Variablenname === null |
Arithmetik | Not-a-Number (NaN) -Fehler | als Nullwert behandelt |
Vergleich | Der Gleichheitsoperator gibt true zurück | Der Identitätsoperator gibt false zurück |
Kennung | Kann ein Bezeichner für eine Eigenschaft eines globalen Objekts sein | Kein Bezeichner für eine Eigenschaft des globalen Objekts |
Fazit - Undefiniert gegen Null
Meistens wird der Unterschied zwischen Undefined und Null missverstanden. Wenn die Unterscheidung zwischen Undefiniert und Null unklar bleibt, kann dies in bestimmten Testfällen zu Problemen führen.
Eine Variable kann als "undefiniert" bezeichnet werden, wenn sie deklariert wurde, aber kein Wert zugewiesen wurde. Auf der anderen Seite ist "null" ein Wert, der einer Variablen zugewiesen werden kann und "kein Wert" darstellt. Daher ist "undefined" ein Variablentyp, wobei "null" ein Objektwert ist.
"Null" gilt als Platzhalter für nichts. Dies bedeutet, dass wir einer Variablen absichtlich einen Wert zugewiesen haben und somit einer Variablen den Wert von nichts zuweisen. Bei der Überprüfung auf Null oder undefiniert müssen die Gleichheits- (==) und Identitätsoperatoren (===) berücksichtigt werden, da zuvor eine Typkonvertierung durchgeführt wurde.
typeof null // object Typ von undefined // undefined null === undefined // false null == undefined // true null == null // true null === null // true ! null // true isNaN (1 + null) // false isNaN (1 + undefiniert) // true |
Wenn es also um den Unterschied im Typ geht, ist „null“ ein Objekt mit einem gültigen Wert, der keine Eigenschaften hat, nicht veränderbar ist und die ganze Zeit über eine einzige Instanz im System vorhanden ist. Man kann die Art von "null" überprüfen, indem man den Operator "type of" verwendet. Die Verwendung dieses Operators gibt die Ausgabe als "Objekt" aus. Wenn wir den Operator "Typ von" für ein Objekt verwenden, das zu allen Kriterien einer undefinierten Liste gehört, erhalten wir den Objekttyp "undefiniert".
Ein weiterer großer Unterschied zwischen Undefined und Null kann mit der Umwandlung in primitive Typen geschlossen werden. Die Art und Weise, in der Undefined vs Null in primitive Typen konvertiert werden, ist der Schlüsselbereich für die Differenzierung. Bei der arithmetischen Umrechnung von „null“ wird der Wert Null ermittelt. "Undefined" führt jedoch keine solche Konvertierung durch. Wenn wir versuchen, einer Ziffer "undefiniert" hinzuzufügen, wird der Fehler "Keine Zahl" angezeigt.
Die Verwendung von "null" kann im realen Szenario sehr praktisch sein. Zum Beispiel - Einige Leute haben keinen zweiten Vornamen. In diesem Fall ist es daher besser, einer zweiten Namensvariablen in einem Personenobjekt den Wert null zuzuweisen. Wenn jemand auf die Variable des zweiten Vornamens im Personenobjekt zugreift und sie den Wert "undefiniert" hat. In diesem Fall kann nicht festgestellt werden, ob der Entwickler diese Variable vergessen hat oder keinen Wert hat. Wenn es als null zugewiesen wird, bedeutet dies, dass ein Benutzer leicht darauf schließen kann, dass die Variable für den zweiten Vornamen keinen Wert hat.
Zusammenfassend haben „null“ und „undefiniert“ unterschiedliche Bedeutungen. Während "null" ein spezielles Schlüsselwort ist, das auf ein Fehlen von Werten hinweist, bedeutet "undefined", dass es nicht existiert. Es gibt Situationen, in denen es hilfreich ist, „einen Wert von null“ von „keinen Wert“ zu unterscheiden. Wenn Sie Aktualisierungen für eine Liste senden, kann "null" bedeuten, dieses Feld durch "null" zu ersetzen, und undefiniert kann "nicht berühren" bedeuten. Beim Umgang mit Standardfunktionsparametern: undefined bedeutet „Standardwert verwenden“ und null bedeutet „Null verwenden“. Undefined vs Null als zwei verschiedene Dinge in JavaScript zu haben, kann ehrlich gesagt schmerzhaft sein, aber wenn einer ein JavaScript-Entwickler ist, könnte er / sie es mögen.
Empfohlener Artikel
Dies war ein Leitfaden für den Hauptunterschied zwischen Undefined und Null. Hier diskutieren wir auch die wichtigsten Unterschiede zwischen Javascript undefined und Null mit Infografiken und die Vergleichstabelle. Sie können auch einen Blick auf die folgenden Artikel werfen -
- Go vs Java - Nützliche Unterschiede
- Django vs WordPress Unterschiede
- JavaScript vs C #
- XML vs HTML - Welches ist besser
- Java-Leistung gegen Python