0Pricing
JavaScript Academy · Lektion

Nullish Coalescing mit ??

Legen Sie Standardwerte nur für null und undefined fest.

Nullish Coalescing mit ?? ist eine kostenlose JavaScript Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des JavaScript Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der JavaScript Academy-Kurs umfasst insgesamt 4 Lektionen.

Standardwerte bereitstellen

Oft benötigen Sie einen Ersatzwert, wenn ein Wert fehlt. Der Nullish-Coalescing-Operator bietet eine übersichtliche Möglichkeit, nur bei Bedarf Standardwerte bereitzustellen.

const name = undefined;
console.log(name ?? "Guest"); // "Guest"

Der ??-Operator

Der Doppel-Fragezeichen-Operator gibt den Wert auf der rechten Seite nur zurück, wenn die linke Seite null oder undefined ist.

console.log(null ?? "fallback");      // "fallback"
console.log(undefined ?? "fallback"); // "fallback"
console.log("hi" ?? "fallback");      // "hi"

Warum nicht || verwenden

Das logische Oder || verwendet bei jedem falsy-Wert den Ersatzwert, einschließlich 0, "" und false. Das ist bei echten Daten häufig falsch.

console.log(0 || 10);  // 10  (probably unwanted)
console.log(0 ?? 10);  // 0   (keeps the real value)

Fall einer leeren Zeichenkette

Mit || wird eine absichtlich leere Zeichenkette ersetzt; mit ?? bleibt sie erhalten, weil "" nicht nullish ist.

const note = "";
console.log(note || "none"); // "none"
console.log(note ?? "none"); // ""

false bleibt erhalten

Ein echter Wert false bleibt mit ?? erhalten, würde aber von || überschrieben.

const enabled = false;
console.log(enabled ?? true); // false
console.log(enabled || true); // true

Konfiguration sicher auslesen

?? eignet sich ideal für Einstellungen, bei denen 0 oder ein leerer Wert gültige Optionen sind, die Sie absichtlich auswählen können.

function getVolume(settings) {
  return settings.volume ?? 50;
}
console.log(getVolume({ volume: 0 })); // 0

Funktioniert mit Variablen

Der Operator funktioniert mit beliebigen Ausdrücken und gibt den ersten Operanden zurück, der nicht nullish ist.

let cached = null;
const value = cached ?? computeValue();
function computeValue() { return 99; }
console.log(value); // 99

Auswertung mit Kurzschluss

Wie || und && wertet ?? mit Kurzschluss aus: Ist die linke Seite nicht nullish, wird die rechte Seite niemals ausgewertet.

function side() { console.log("called"); return 1; }
const x = "ready" ?? side(); // side() never runs
console.log(x);

Nicht direkt mit && oder || kombinierbar

Wenn Sie ?? ohne Klammern mit && oder || kombinieren, tritt ein Syntaxfehler auf, um Mehrdeutigkeiten zu vermeiden.

const a = true, b = null;
// const c = a || b ?? 1; // SyntaxError
const c = (a || b) ?? 1;
console.log(c);

Standardparameter von Funktionen im Vergleich zu ??

Standardparameter werden nur angewendet, wenn ein Argument undefined ist. ?? berücksichtigt zusätzlich explizit übergebenes null.

function greet(name = "Guest") { return "Hi " + name; }
console.log(greet(null)); // "Hi null"
function greet2(name) { return "Hi " + (name ?? "Guest"); }
console.log(greet2(null)); // "Hi Guest"

Wann welcher Operator sinnvoll ist

Verwenden Sie ??, wenn 0, "" oder false gültige Werte sind, die erhalten bleiben müssen. Verwenden Sie || nur, wenn jeder falsy-Wert durch einen Ersatzwert ersetzt werden soll.

const retries = 0;
console.log(retries ?? 3); // 0 kept

Kurze Überprüfung

Vergleichen Sie die Operatoren.

Zusammenfassung

Der Operator ?? gibt die rechte Seite nur zurück, wenn die linke Seite null oder undefined ist, und erhält 0, "" sowie false. Dadurch ist er bei Standardwerten für echte Daten sicherer als ||. Er wertet mit Kurzschluss aus und kann ohne Klammern nicht mit &&/|| kombiniert werden.

Häufig gestellte Fragen

Ist die Lektion „Nullish Coalescing mit ??“ kostenlos?

Ja — der vollständige Text von „Nullish Coalescing mit ??“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des JavaScript Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der JavaScript Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Nullish Coalescing mit ??“?

Legen Sie Standardwerte nur für null und undefined fest. Du übst JavaScript Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um JavaScript Academy zu starten?

Keine Vorkenntnisse erforderlich. JavaScript Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Nullish Coalescing mit ??“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser JavaScript Academy-Lektion Code schreiben und ausführen?

Ja. Jede JavaScript Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Optional Chaining mit dem Operator ?.
  2. Nullish Coalescing mit ??
  3. ?. und ?? kombinieren
  4. Optionale Aufrufe und Indexzugriff
← Zurück zu JavaScript Academy