Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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⁩.

Das null Schlüsselwort bezieht sich auf den null primitiven Wert, der die absichtliche Abwesenheit eines Objektwerts darstellt.

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: 0

Syntax

js
null

Beschreibung

Das Schlüsselwort null ist ein Literal für den Wert null. Im Gegensatz zu undefined, das eine globale Variable ist, ist null kein Bezeichner, sondern ein Syntax-Schlüsselwort.

null hat die folgenden Verhaltensweisen:

  • Ähnlich wie undefined wirft der Zugriff auf jede Eigenschaft von null einen TypeError, anstatt undefined zurückzugeben oder Prototypketten zu durchsuchen.
  • Ähnlich wie undefined wird null für boolesche Operationen als falsy und für nullish coalescing und optional chaining als nullish behandelt.
  • Das Ergebnis von typeof null ist "object". Dies ist ein Fehler in JavaScript, der aus Gründen der Abwärtskompatibilität nicht behoben werden kann.
  • Im Gegensatz zu undefined kann JSON.stringify() null getreu darstellen.

JavaScript ist einzigartig, da es zwei nullish Werte hat: null und undefined. Semantisch ist ihr Unterschied sehr gering: undefined steht für die Abwesenheit eines Wertes, während null die Abwesenheit eines Objekts darstellt. Zum Beispiel ist das Ende der Prototypkette null, weil die Prototypkette aus Objekten besteht; document.querySelector() gibt null 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 wahrscheinlich null und undefined als gleichwertige Eingaben akzeptieren, da viele Codebasen stilistische Regeln darüber haben, wann standardmäßig null oder undefined verwendet wird.

Beispiele

Unterschied zwischen null und undefined

Beim Überprüfen auf null oder undefined, beachten Sie die Unterschiede zwischen Gleichheits- (==) und Identitätsoperatoren (===), da der erstere eine Typkonvertierung durchführt.

js
typeof null; // "object" (not "null" for legacy reasons)
typeof undefined; // "undefined"
null === undefined; // false
null == undefined; // true
null === null; // true
null == null; // true
!null; // true
Number.isNaN(1 + null); // false
Number.isNaN(1 + undefined); // true

Spezifikationen

Specification
ECMAScript® 2026 Language Specification
# sec-null-value

Browser-Kompatibilität

Siehe auch