0Pricing
TypeScript Academy · Lektion

null, undefined und strikte Nullprüfungen

Behandeln Sie null und undefined im Strict-Modus sicher.

null, undefined und strikte Nullprüfungen ist eine kostenlose TypeScript Academy-Lektion auf CoddyKit. Dies ist Lektion 4 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 TypeScript Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der TypeScript Academy-Kurs umfasst insgesamt 4 Lektionen.

Willkommen

In JavaScript sind null und undefined häufige Ursachen für Laufzeitfehler. Die strikte Nullprüfung von TypeScript zwingt Sie dazu, diese Werte explizit zu behandeln.

null vs. undefined

`undefined` bedeutet, dass eine Variable deklariert, aber noch nicht mit einem Wert versehen wurde. `null` bezeichnet das absichtliche Fehlen eines Werts. In TypeScript sind beide separate Typen.
let a: undefined = undefined;
let b: null = null;

Ohne strikte Nullprüfung

Ohne `strictNullChecks` sind null und undefined Untertypen jedes Typs. Dies ist der Standard in älteren TypeScript-Versionen und im Allgemeinen unsicher.
// strictNullChecks: false (unsafe default)
let name: string = null; // allowed — dangerous!

Strikte Nullprüfung aktivieren

Mit `strictNullChecks: true` (in `strict` enthalten) können null und undefined nur ihrem eigenen Typ oder expliziten Union-Typen zugewiesen werden.
// strictNullChecks: true
let name: string = null; // Error!
let maybeName: string | null = null; // OK

Optionale Eigenschaften

Mit `?` gekennzeichnete Objekteigenschaften sind implizit vom Typ `T | undefined`. Sie müssen den Fall behandeln, dass sie fehlen.
interface Config {
  host: string;
  port?: number; // number | undefined
}

const c: Config = { host: 'localhost' };
console.log(c.port?.toString()); // optional chaining

Nullable Typen eingrenzen

Verwenden Sie eine if-Prüfung, um eine Union mit null oder undefined einzugrenzen, bevor Sie auf Eigenschaften zugreifen.
function greet(name: string | null): string {
  if (name === null) return 'Guest';
  return 'Hello, ' + name;
}

Optional Chaining (?.)

Der Operator `?.` bricht die Auswertung mit `undefined` ab, wenn die linke Seite null oder undefined ist, und verhindert so einen Laufzeitabsturz.
const user = getUser();
const city = user?.address?.city; // undefined if any step is null

Nullish Coalescing (??)

Der Operator `??` gibt die rechte Seite nur zurück, wenn die linke Seite null oder undefined ist – anders als `||`, das bei jedem Falsy-Wert ausgelöst wird.
const port = config.port ?? 3000; // 3000 if port is null/undefined
const label = name ?? 'Anonymous';

Non-Null-Assertion-Operator (!)

Der Postfix-Operator `!` teilt TypeScript mit, dass Sie sicher sind, dass ein Wert nicht null oder undefined ist. Verwenden Sie ihn nur, wenn Sie absolut sicher sind.
const el = document.getElementById('root')!;
el.textContent = 'Loaded'; // no null check needed

null vs. undefined zurückgeben

Geben Sie vorzugsweise `null` zurück, um ein absichtlich leeres Ergebnis zu kennzeichnen, und `undefined` für fehlende oder optionale Werte. Bleiben Sie innerhalb Ihrer Codebasis konsistent.
function findUser(id: number): User | null {
  return db.find(u => u.id === id) ?? null;
}

strictNullChecks verhindert den Milliarden-Dollar-Fehler

Tony Hoare bezeichnete null als seinen „Milliarden-Dollar-Fehler“. TypeScripts strictNullChecks verhindert Abstürze durch null und undefined, indem es Sie dazu zwingt, diese Werte explizit zu behandeln.

Schnelltest

Was gibt der Operator `??` (Nullish Coalescing) von seiner rechten Seite zurück?

Zusammenfassung

Aktivieren Sie strictNullChecks, um Fehler durch null und undefined zu verhindern. Verwenden Sie Union-Typen für nullable Werte, optional chaining (?.) zum sicheren Durchlaufen und nullish coalescing (??) für Standardwerte.

Häufig gestellte Fragen

Ist die Lektion „null, undefined und strikte Nullprüfungen“ kostenlos?

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

Was lerne ich in „null, undefined und strikte Nullprüfungen“?

Behandeln Sie null und undefined im Strict-Modus sicher. Du übst TypeScript 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 TypeScript Academy zu starten?

Keine Vorkenntnisse erforderlich. TypeScript 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 4 von 4.

Wie lange dauert die Lektion „null, undefined und strikte Nullprüfungen“?

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 TypeScript Academy-Lektion Code schreiben und ausführen?

Ja. Jede TypeScript 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. Primitive Typen: string, number, boolean
  2. Der any-Typ und warum Sie ihn vermeiden sollten
  3. unknown vs. any: die sicherere Wahl
  4. null, undefined und strikte Nullprüfungen
← Zurück zu TypeScript Academy