Skip to content
NeuralSkills
Fehlerbehebung

Null-Referenz-Eliminator

Null- und Undefined-Referenzfehler systematisch finden und mit defensiven Programmiermustern beheben.

Fortgeschritten Kostenlos Veroeffentlicht: 15. April 2026
Kompatible Tools claude-codechatgptgeminicopilotcursorwindsurfuniversal

Das Problem

Tony Hoare nannte Null seinen “Milliarden-Dollar-Fehler” — und jeder Entwickler hat den Preis gezahlt. “Cannot read property X of undefined” ist der haeufigste Fehler in JavaScript. Diese Fehler scheinen einfach, verbergen sich aber in tief verschachtelten Objekten, optionalen API-Antworten, Race Conditions zwischen Initialisierung und Zugriff, und impliziten Typumwandlungen, die gueltige Werte in Null verwandeln.

Der Prompt

Du bist ein Null-Sicherheits-Analyst. Pruefe diesen Code auf Null/Undefined-Schwachstellen und liefere systematische Fixes:

CODE:
[Funktion, Komponente oder Modul einfuegen]

SPRACHE: [JavaScript/TypeScript/Java/Python/Go/etc.]
FEHLER (falls vorhanden): [Null-Referenz-Fehlermeldung und Zeile einfuegen]
DATENQUELLE: [woher kommen die Daten — API, Datenbank, Benutzereingabe, Props]

Fuehre ein Null-Sicherheits-Audit durch:
1. **Null-Quellen-Mapping**: Fuer jeden Variablenzugriff zurueck zur Quelle verfolgen. Kann diese Quelle jemals null/undefined sein?
2. **Zugriffsketten-Analyse**: Jede Property-Zugriffskette (a.b.c.d) finden. Fuer jedes Glied bestimmen, ob es null sein kann.
3. **Temporale Null-Fenster**: Zeitraeume identifizieren, in denen Variablen null sind — zwischen Deklaration und Initialisierung, waehrend async Operationen, nach Cleanup/Unmount.
4. **Defensiver Fix**: Fuer jede Schwachstelle den passenden Fix empfehlen — Optional Chaining (?.), Nullish Coalescing (??), Type Guards, Standardwerte, Early Returns oder Schema-Validierung.
5. **Praevention**: Typ-Garantien vorschlagen, die diese Null-Fehler zur Compile-Zeit unmoeglich machen.

Beispiel-Ausgabe

Null-Quellen gefunden: 3 kritisch, 5 moderat
Kritisch #1: user.profile.avatar.url — API liefert profile:null fuer neue Benutzer
Kritisch #2: items[0].name — Array kann leer sein, items[0] ist undefined
Kritisch #3: ref.current.focus() — ref ist null beim ersten Render und nach Unmount
Fix #1: user.profile?.avatar?.url ?? '/default-avatar.png'
Fix #2: items.length > 0 ? items[0].name : 'Keine Eintraege'
Fix #3: ref.current?.focus() innerhalb useEffect
Praevention: "strictNullChecks" in tsconfig.json aktivieren

Wann verwenden

Diesen Skill einsetzen bei “Cannot read property of null/undefined”-Fehlern, beim Refactoring von Code mit verschachtelten Datenstrukturen, oder bei Integration externer APIs mit nicht garantierten Antwortformen. Auch proaktiv fuer kritische Codepfade vor dem Produktivgang.

Profi-Tipps

  • TypeScript strict null checks aktivieren"strictNullChecks": true erzwingt die Behandlung von null zur Compile-Zeit.
  • An der Grenze validieren, innen vertrauen — alle externen Daten am Eintrittspunkt mit Zod validieren. Innerhalb der validierten Grenze den Typen vertrauen.
  • Das Double-Bang-Antimuster!! zur Boolean-Konvertierung verbirgt Null-Checks. Explizit pruefen, was man testet.
  • Optional Chaining kurzschliessta?.b?.c?.d gibt undefined am ersten Null-Glied zurueck. Mit ?? fuer Standardwerte kombinieren.