Falsy

Ein falsy-Wert (manchmal auch falsey geschrieben) ist ein Wert, der als falsch betrachtet wird, wenn er in einem Boolean-Kontext verwendet wird.

JavaScript verwendet Typkonvertierung, um jeden Wert in einem Boolean-Kontext in einen Boolean zu erzwingen, der dies erfordert, wie zum Beispiel in bedingten Anweisungen und Schleifen.

Die folgende Tabelle bietet eine vollständige Liste der JavaScript-falsy-Werte:

Wert Typ Beschreibung
null Null Das Schlüsselwort null — die Abwesenheit eines Wertes.
undefined Undefined undefined — der primitive Wert.
false Boolean Das Schlüsselwort false.
NaN Number NaN — nicht eine Nummer.
0 Number Die Number Null, einschließlich 0.0, 0x0, etc.
-0 Number Die Number negative Null, einschließlich -0.0, -0x0, etc.
0n BigInt Die BigInt Null, einschließlich 0x0n, etc. Beachten Sie, dass es keine BigInt negative Null gibt — die Negation von 0n ist 0n.
"" String Leerer String-Wert, einschließlich '' und ``.
document.all Object Das einzige falsy-Objekt in JavaScript ist das eingebaute document.all.

Die Werte null und undefined sind auch nullish.

Beispiele

Beispiele für falsy-Werte in JavaScript (die in Boolean-Kontexten zu false erzwingen und somit den if-Block umgehen):

js
if (false) {
  // Not reachable
}

if (null) {
  // Not reachable
}

if (undefined) {
  // Not reachable
}

if (0) {
  // Not reachable
}

if (-0) {
  // Not reachable
}

if (0n) {
  // Not reachable
}

if (NaN) {
  // Not reachable
}

if ("") {
  // Not reachable
}

Der logische UND-Operator, &&

Wenn das erste Objekt falsy ist, gibt es dieses Objekt zurück:

js
console.log(false && "dog");
// ↪ false

console.log(0 && "dog");
// ↪ 0

Siehe auch