Nutzer öffnen Web-Apps in mehreren Tabs gleichzeitig. Die Broadcast Channel API löst elegantly das Synchronisationsproblem: Logout, Theme-Wechsel, Session-Updates und State-Änderungen werden sofort in alle offenen Tabs gesendet – komplett ohne Server, ohne WebSocket, ohne Polling.
JavaScript-Numbers sind 64-Bit-Floats – und verlieren bei Ganzzahlen über 9 Billiarden (2^53) lautlos Präzision. BigInt löst das Problem: beliebig große Ganzzahlen ohne Rundungsfehler, für IDs, Kryptographie, Timestamps und Finanzberechnungen.
Ein einzelner Heap Snapshot zeigt nur eine Momentaufnahme, aber die Drei Snapshot Technik entlarvt systematisch, welche Objekte trotz Garbage Collector im Speicher bleiben. Retainer Pfade zeigen exakt, welche Referenz eine Freigabe verhindert, und machen aus vagem Speicherverdacht eine konkrete Ursache im Code.
Interaction to Next Paint bestraft jede Millisekunde, die zwischen Klick und sichtbarer Reaktion vergeht. Wer Long Tasks systematisch identifiziert und mit Yielding, Scheduler API und Event Handler Aufteilung auflöst, senkt die INP Zahl nicht durch Zufall, sondern durch nachvollziehbare technische Eingriffe.
Das neue using-Schlüsselwort in JavaScript automatisiert das Freigeben von Ressourcen beim Verlassen eines Scopes — Datenbankverbindungen, Datei-Handles, Locks und Worker werden garantiert aufgeräumt, egal ob der Block normal endet, eine Exception wirft oder ein early return ausgelöst wird.
Schema-Migration in IndexedDB unterscheidet sich fundamental von serverseitigen Datenbank-Migrationen: Es gibt kein Migrationstool, keine SQL-DDL-Befehle und keinen zentralen Ausführungsort, sondern nur das onupgradeneeded-Event, eine einzelne Versionsnummer und die Verantwortung des Entwicklers, Object Stores und Indexe schrittweise, robust und rückwärtskompatibel zu verändern.
Das Observer Pattern entkoppelt einen Zustandsträger von den Codeteilen, die auf dessen Änderungen reagieren müssen, ganz ohne direkte Referenzen zwischeneinander. Von einer minimalen Subject-Klasse über das native EventTarget-Interface bis zu WeakRef-basiertem Cleanup zeigt dieser Artikel, wie das Observer Pattern in reinem JavaScript robust implementiert wird.
Ein Service Worker ist kein optionales Feature – er ist die Grundlage für Apps, die Nutzern auch bei schlechter oder fehlender Verbindung eine vollständige Erfahrung bieten. Wer Offline-First denkt, baut Apps, die schneller, zuverlässiger und installierbarer sind als klassische Webanwendungen.
Generator Functions sind eine der unterschätztesten JavaScript-Funktionen: Sie produzieren Werte on-demand, verarbeiten unendliche Datenströme mit konstantem Speicherbedarf und ermöglichen elegante asynchrone Iteration – ohne externe Bibliotheken und ohne Promise-Callback-Chaos.
requestAnimationFrame ist die einzige korrekte Methode, um Animationen im Browser zu implementieren. Wer setTimeout oder setInterval nutzt, kämpft gegen den Rendering-Zyklus statt mit ihm. Dieser Artikel zeigt, wie rAF funktioniert, wie man einen robusten Render-Loop baut und welche Fallen den Frame-Rhythmus zerstören.