Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
null
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.
Dasnull Schlüsselwort bezieht sich auf dennullprimitiven Wert, der die absichtliche Abwesenheit eines Objektwerts darstellt.
In diesem Artikel
Probieren Sie es aus
function getVowels(str) { const m = str.match(/[aeiou]/gi); if (m === null) { return 0; } return m.length;}console.log(getVowels("sky"));// Expected output: 0Syntax
nullBeschreibung
Das Schlüsselwortnull ist ein Literal für den Wertnull. Im Gegensatz zuundefined, das eine globale Variable ist, istnull kein Bezeichner, sondern ein Syntax-Schlüsselwort.
null hat die folgenden Verhaltensweisen:
- Ähnlich wie
undefinedwirft der Zugriff auf jede Eigenschaft vonnulleinenTypeError, anstattundefinedzurückzugeben oder Prototypketten zu durchsuchen. - Ähnlich wie
undefinedwirdnullfür boolesche Operationen alsfalsy und fürnullish coalescing undoptional chaining alsnullish behandelt. - Das Ergebnis von
typeof nullist"object". Dies ist ein Fehler in JavaScript, der aus Gründen der Abwärtskompatibilität nicht behoben werden kann. - Im Gegensatz zu
undefinedkannJSON.stringify()nullgetreu darstellen.
JavaScript ist einzigartig, da es zwei nullish Werte hat:null undundefined. Semantisch ist ihr Unterschied sehr gering:undefined steht für die Abwesenheit eines Wertes, währendnull die Abwesenheit einesObjekts darstellt. Zum Beispiel ist das Ende derPrototypkettenull, weil die Prototypkette aus Objekten besteht;document.querySelector() gibtnull zurück, wenn keine Übereinstimmung gefunden wird, da das Ergebnis ein Objekt wäre, wenn es eine Übereinstimmung gäbe. Wenn Sie eine API entwerfen, sollten Sie wahrscheinlichnull undundefined als gleichwertige Eingaben akzeptieren, da viele Codebasen stilistische Regeln darüber haben, wann standardmäßignull oderundefined verwendet wird.
Beispiele
>Unterschied zwischennull undundefined
Beim Überprüfen aufnull oderundefined, beachten Sie dieUnterschiede zwischen Gleichheits- (==) und Identitätsoperatoren (===), da der erstere eine Typkonvertierung durchführt.
typeof null; // "object" (not "null" for legacy reasons)typeof undefined; // "undefined"null === undefined; // falsenull == undefined; // truenull === null; // truenull == null; // true!null; // trueNumber.isNaN(1 + null); // falseNumber.isNaN(1 + undefined); // trueSpezifikationen
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-null-value> |