JavaScript läuft im Browser jeder gängigen Website und, seit der Einführung von Node.js im Jahr 2009, zusätzlich auf Servern. Diese Kombination hat die Sprache zu einem festen Bestandteil fast jeder Webentwicklung gemacht. Die Umfrage State of JS 2024 zeigt, wie sich das Ökosystem um die Sprache derzeit sortiert: React bleibt mit großem Abstand das meistgenutzte Frontend-Framework, gefolgt von Vue.js, dessen Nutzung sich seit der letzten Befragung verdoppelt hat. Svelte, ein kleineres Framework mit schlankerem Unterbau, hat seine Nutzerzahl im selben Zeitraum verfünffacht, wenn auch von einer niedrigeren Ausgangsbasis aus.
Node.js bringt JavaScript auf den Server
Bis 2009 lief JavaScript ausschließlich im Browser. Node.js änderte das, indem es die JavaScript-Engine V8 aus Google Chrome herauslöste und außerhalb des Browsers lauffähig machte. Seitdem können Entwickler mit derselben Sprache sowohl die Oberfläche einer Website als auch die Serverlogik dahinter schreiben, etwa den Code, der Formulardaten entgegennimmt und in einer Datenbank speichert. Das erspart Teams die Umstellung zwischen zwei Sprachen und macht es leichter, Code zwischen Frontend und Backend zu teilen.
Node.js ist inzwischen nicht mehr allein. Deno, ein Projekt von Node-Erfinder Ryan Dahl, und Bun, ein jüngerer Konkurrent mit Fokus auf Startgeschwindigkeit, bieten ähnliche Umgebungen an. Beide sind mit einem großen Teil des bestehenden Node-Ökosystems kompatibel, konkurrieren aber um Entwickler, die eine schnellere Ausführung oder eine aufgeräumtere Konfiguration suchen.
Single-Page Applications laden Inhalte nach, ohne die Seite neu zu laden
Eine Single-Page Application, kurz SPA, lädt beim ersten Aufruf ein HTML-Grundgerüst und tauscht danach nur noch die Inhalte innerhalb dieser Seite aus, wenn der Nutzer navigiert. Das vermeidet den kurzen weißen Blitz, den ein vollständiger Seitenneuaufbau verursacht, und lässt eine Web-Anwendung sich eher wie ein installiertes Programm anfühlen. React, Vue und das auf React aufbauende Next.js sind die Werkzeuge, mit denen die meisten Entwickler solche Anwendungen heute bauen. Next.js ist laut derselben Umfrage inzwischen das meistgenutzte Meta-Framework für React, weil es Routing, serverseitiges Rendern und das Bündeln des Codes bereits mitbringt.
Progressive Web Apps funktionieren auch offline
Eine Progressive Web App, kurz PWA, ist eine Website, die sich wie eine native App installieren lässt und dank eines Service Workers, eines im Hintergrund laufenden Skripts, auch ohne Internetverbindung teilweise funktioniert. Nutzer können eine PWA auf dem Startbildschirm ihres Smartphones ablegen, ohne den Umweg über einen App Store zu gehen. Für Unternehmen senkt das die Entwicklungskosten, weil eine einzige Codebasis für Web und mobile Nutzung reicht.
Die Technik hat allerdings eine bekannte Lücke. Apples Safari-Browser unterstützt zentrale PWA-Funktionen wie Push-Benachrichtigungen bis heute nur eingeschränkt. Wer eine PWA für iPhone-Nutzer plant, sollte diese Einschränkung vorher prüfen, statt sie erst im Test zu entdecken.
WebAssembly ergänzt JavaScript bei rechenintensiven Aufgaben
JavaScript wird beim Laden einer Seite ausgewertet und dann ausgeführt, was für die meisten Websites schnell genug ist, aber bei rechenintensiven Aufgaben wie Videoschnitt, CAD-Software oder komplexen Spielen an Grenzen stößt. WebAssembly, kurz Wasm, ist ein Binärformat, in das sich Code aus Sprachen wie C++, Rust oder Go übersetzen lässt, damit er im Browser nahezu mit nativer Geschwindigkeit läuft. JavaScript bleibt dabei die Klammer, die den Wasm-Baustein lädt und mit dem Rest der Seite verbindet, etwa mit Formularfeldern oder der Anzeige.
TensorFlow.js bringt maschinelles Lernen in den Browser
Mit der Bibliothek TensorFlow.js von Google können vortrainierte Machine-Learning-Modelle direkt im Browser laufen, statt jede Anfrage an einen Server zu schicken. Das eignet sich etwa für eine Gesichtserkennung in der Kamera-Vorschau einer Web-App oder eine Texterkennung, die ein hochgeladenes Bild noch vor dem Versand analysiert. Weil die Berechnung auf dem Gerät der Nutzer stattfindet, bleiben Bilddaten dort, statt an einen fremden Server übertragen zu werden, was bei sensiblen Anwendungen ein Datenschutzvorteil ist.
Für Entwickler heißt das insgesamt: Wer heute mit JavaScript arbeitet, kommt an Node.js oder einer seiner Alternativen kaum vorbei, sollte React oder Vue mindestens einmal ausprobiert haben und weiß im besten Fall, wann WebAssembly die bessere Wahl gegenüber reinem JavaScript ist. Keines dieser Werkzeuge ersetzt die Sprache selbst, sie erweitern nur, wofür sie eingesetzt werden kann.
Häufig gestellte Fragen
Was unterscheidet Deno und Bun von Node.js?
Deno stammt von Node-Erfinder Ryan Dahl, Bun ist ein jüngerer Konkurrent mit Fokus auf Startgeschwindigkeit. Beide sind mit einem großen Teil des bestehenden Node-Ökosystems kompatibel, bieten aber eine andere Laufzeitumgebung und eine aufgeräumtere Konfiguration und konkurrieren damit um Entwickler, die eine schnellere Ausführung suchen.
Warum funktionieren Progressive Web Apps auf dem iPhone eingeschränkt?
Apples Safari-Browser unterstützt zentrale PWA-Funktionen wie Push-Benachrichtigungen bis heute nur eingeschränkt. Wer eine Progressive Web App für iPhone-Nutzer plant, sollte diese Einschränkung deshalb vorab prüfen, statt sie erst im Test zu entdecken.
Wofür wird WebAssembly zusätzlich zu JavaScript eingesetzt?
WebAssembly, kurz Wasm, ist ein Binärformat, in das sich Code aus Sprachen wie C++, Rust oder Go übersetzen lässt, damit er im Browser nahezu mit nativer Geschwindigkeit läuft. Es kommt bei rechenintensiven Aufgaben wie Videoschnitt, CAD-Software oder komplexen Spielen zum Einsatz, während JavaScript weiterhin die Klammer bildet, die den Wasm-Baustein lädt und mit dem Rest der Seite verbindet.
Welches Frontend-Framework nutzen die meisten Entwickler laut State of JS 2024?
React bleibt laut der Umfrage mit großem Abstand das meistgenutzte Frontend-Framework. Vue.js liegt dahinter und hat seine Nutzung seit der letzten Befragung verdoppelt, während das kleinere Framework Svelte seine Nutzerzahl im selben Zeitraum verfünffacht hat, wenn auch von einer niedrigeren Ausgangsbasis aus.
