Web & Entwicklung

JavaScript

JavaScript ist die Programmiersprache, die Websites interaktiv macht — Menüs, Formularprüfungen, Nachladen von Inhalten. Sie läuft im Browser des Besuchers, nicht auf dem Server.

Redaktionell geprüft von Alexander SeidlertwentyonepixelsStand:

Der Preis von Interaktivität

Jede Zeile muss geladen und ausgeführt werden, bevor sie wirkt. Auf einem älteren Handy im Mobilfunknetz macht das den Unterschied zwischen einer Seite, die sofort da ist, und einer, die zwei Sekunden ruckelt.

Deshalb gilt: so viel wie nötig, so wenig wie möglich. Ein Menü, das ohne JavaScript funktioniert, ist besser als eines, das dafür 200 Kilobyte braucht. Eine Zahl zum Vergleich: Diese Website führt 200 KB als Budget und liegt bei 114 KB, gemessen am 27.08.2026 an der komprimiert ausgelieferten Größe.

Was jede Zeile davon kostet

Sie muss geladen, gelesen und ausgeführt werden — und das dauert auf einem vier Jahre alten Telefon ein Vielfaches länger als auf einem aktuellen Laptop. Ein Skriptpaket von einem Megabyte ist dort keine halbe Sekunde, sondern mehrere.

Deshalb ist die nützlichste Frage bei jeder neuen Bibliothek: Was genau bringt sie, und geht es auch ohne? Bei Bildergalerien, Aufklappmenüs und Formularprüfung lautet die Antwort heute meist: geht auch ohne.

Was passiert, wenn es nicht läuft

Bei Nutzern selten — bei automatischen Lesern regelmäßig. Die Crawler der KI-Anbieter führen kein JavaScript aus; für sie ist eine Anwendung ohne serverseitige Auslieferung eine leere Seite. Googles Crawler rendert, aber verzögert.

Die Konsequenz ist keine Rückkehr zu statischen Seiten, sondern eine bewusste Entscheidung: Was muss im Rohdokument stehen, und was darf nachgeladen werden? Alles, was gefunden werden soll, gehört in die erste Gruppe.

Was das für die Auffindbarkeit bedeutet

Google führt JavaScript aus, mit Verzögerung. KI-Crawler wie GPTBot, ClaudeBot und PerplexityBot tun es NICHT — für sie ist eine Seite, die ihren Inhalt erst per JavaScript aufbaut, leer.

Wer in KI-Antworten vorkommen will, braucht deshalb serverseitiges Rendern: Der Text steht im ausgelieferten HTML, JavaScript verbessert ihn nur.

Rechtsgrundlagen

Häufige Fragen zu JavaScript

Über neue Sprachmerkmale entscheidet das Komitee TC39 von Ecma International im Konsens, nicht ein einzelner Browserhersteller. Der Weg dorthin führt über sechs Stufen von 0 bis 4; für die letzte verlangt das TC39-Prozessdokument zwei kompatible Umsetzungen, die die Prüfsuite Test262 bestehen. Erst danach steht ein Merkmal in der Jahresausgabe von ECMA-262 – seit ECMAScript 2016 erscheint sie jährlich, aktuell als 17. Ausgabe von Juni 2026. Auch dieser Weg kann enden: Die vierte Ausgabe wurde begonnen und nie veröffentlicht.

Nicht exakt. ECMA-262 legt den Zahlentyp in Abschnitt 6.1.6.1 auf IEEE-754-2019-binary64 mit doppelter Genauigkeit fest; einen Dezimaltyp kennt die Sprache nicht. 0,1 plus 0,2 ergibt deshalb 0,30000000000000004, und ganze Zahlen bleiben nur bis 9.007.199.254.740.991 eindeutig – darüber teilen sich zwei Zahlen denselben Wert. Für Beträge folgt daraus eine Regel: in Cent als ganze Zahl rechnen und erst zur Anzeige umformen. BigInt hilft dabei nicht, denn BigInt kennt keine Brüche.

Sie scheitert daran, dass JavaScript im Browser des Besuchers läuft und dort vollständig dessen Kontrolle unterliegt. Die Entwicklerwerkzeuge jedes Browsers erlauben, Feldinhalte zu ändern, Attribute zu entfernen oder das Skript abzuschalten, und ein Formular lässt sich auch ohne Browser abschicken. Daraus folgt die Arbeitsteilung: JavaScript prüft für die Bequemlichkeit, der Server prüft für die Gültigkeit. Jede Prüfung, an der eine Entscheidung hängt, muss serverseitig wiederholt werden; ein Zugangsschlüssel gehört nie in ausgelieferten Code.

Alles, was auf der Seite steht. Ein per script-Tag eingebundenes Skript läuft mit den Rechten der einbindenden Seite; das Einbinden fremder Skripte ist von der Gleiche-Herkunft-Regel ausdrücklich ausgenommen, so die Mozilla-Dokumentation zur Same-origin policy. Es liest damit jedes Eingabefeld, jeden Text und die Cookies der Domain und kann das Gelesene weitersenden. Speichert oder liest es etwas auf dem Endgerät, verlangt § 25 Absatz 1 TDDDG vorher eine Einwilligung – ein Einwilligungsbanner steuert jedoch nur, wann das Skript lädt, nicht, was es danach liest.

Mehr zum Thema

8 Min. Lesezeit

Alte Fachanwendung läuft nicht unter Windows 11 – was tun

Viele Betriebe halten Windows 10 nur wegen einer einzigen Branchensoftware am Leben. Welche Wege es gibt – ESU, virtuelle Maschine, Terminalserver oder Ablösung als Web-Anwendung – und wann welcher trägt.

9 Min. Lesezeit

Passkeys einbauen: Login ohne Passwort im Kundenportal

Passkeys lassen sich nicht abfischen, weil sie an die Domain gebunden sind. Was der Einbau in ein Kundenportal verlangt, wo die eigentliche Schwachstelle liegt und wann ein Passwort als Rückfallebene bleiben muss.

Alle Fachbeiträge ansehen

Passende Leistungen

React & Next.js Entwicklung

Performante Webanwendungen mit Server-Side Rendering und TypeScript — von der Firmenwebsite bis zur komplexen Plattform.

Mehr dazu

Laravel & Vue.js Entwicklung

Individuelle Webanwendungen mit Laravel-Backend und Vue.js-Frontend — REST-APIs, Echtzeit-Features und robuste Datenbank-Architektur.

Mehr dazu

Performance-Optimierung

Analyse und Optimierung der Ladezeiten: Bundle-Analyse, Bild-Optimierung und Cache-Strategien für Top Core Web Vitals.

Mehr dazu