Was ist ECMAScript – und was nicht?
Von Evren BalVeröffentlicht Aktualisiert · 3 Min. Lesezeit

Seite kopieren
💡 Kurz gesagt:
- ECMAScript (ES): die offizielle Spezifikation beziehungsweise der Standard für Skriptsprachen, gepflegt von ECMA International unter ECMA-262.
- JavaScript (JS): die verbreitetste Programmiersprachen-Implementierung des ECMAScript-Standards.
- Versionsentwicklung: Seit ES6 (ES2015) erscheinen neue Funktionen jährlich, von ES2016 bis ES2026+. Moderne Engines unterstützen Funktionen bis ES2021+ nativ; schwere Kompilierungswerkzeuge wie Babel sind daher außerhalb alter Browserziele seltener nötig.
In JavaScript-Bibliotheken auf GitHub, Stellenausschreibungen oder Beiträgen auf X taucht ECMAScript immer wieder auf. Selbst in Ausschreibungen auf Senior-Level herrscht über den Begriff Verwirrung. ECMAScript soll Skriptsprachen und insbesondere JavaScript standardisieren; unterschiedliche Verwendungen und Missverständnisse sind häufig. Dieser Artikel entstand aus einer solchen Ausschreibung.
In Stellenanzeigen lesen Sie etwa:
- umfassende Kenntnisse in JavaScript und ECMAScript,
- Kenntnisse in ES5 und ES6,
- Kenntnisse in ES6+ – aus meiner Sicht die merkwürdigste Formulierung,
- Kenntnisse in ES.Next – die sinnvollste.
Auch häufig gesuchte Begriffe zeigen das Missverständnis: „ECMAScript vs. JavaScript“, „Was ist ECMAScript?“, „Unterschied zwischen ECMAScript und JavaScript“ und „ECMAScript lernen“. Die folgenden Antworten klären es.
ECMAScript und JavaScript im Vergleich
| Merkmal | ECMAScript | JavaScript |
|---|---|---|
| Was ist es? | Eine standardisierte Spezifikation, also ein Regelwerk. | Eine vollwertige Programmiersprache. |
| Trägerorganisation | ECMA International, TC39-Komitee. | Mozilla Foundation und Browserhersteller. |
| Ausführung | Nicht direkt ausführbar; es ist ein Bauplan. | Wird von JS-Engines wie V8, JavaScriptCore und SpiderMonkey ausgeführt. |
| Host-APIs | Schließt umgebungsspezifische Funktionen aus, also weder DOM noch Dateisystem. | Enthält je nach Umgebung Host-APIs, etwa DOM im Browser oder fs in Node.js. |
Was ist ECMA International?
ECMA, ausgeschrieben „European Computer Manufacturers Association“, ist ein gemeinnütziger Verband. ECMA veröffentlicht Standards für Informations- und Kommunikationstechnologien und befasst sich nicht nur mit ECMAScript.
Was ist ECMAScript?
ECMA International veröffentlicht viele Standards. Der ECMAScript-Standard wird durch ECMA-262 geregelt und ist einer davon. ECMAScript ist ein allgemeiner Standard für Skriptsprachen.
Was unterscheidet ECMAScript von JavaScript?
ECMAScript ist eine Spezifikation. JavaScript ist eine Programmiersprache, die dieser Spezifikation entspricht.
Der Satz „Ich kann JavaScript, aber kein ECMAScript“ ist deshalb nicht sinnvoll. Würden Sie eine neue Skriptsprache von Grund auf entwickeln, müssten Sie die ECMAScript-Spezifikation Seite für Seite studieren. Um ein erfolgreicher JavaScript-Entwickler zu sein, müssen Sie das nicht. Weil JavaScript dem Standard entspricht, hilft Ihnen aber Wissen über seine weiterentwickelten Funktionen, saubereren Code zu schreiben.
ES5, ES6, ES7 … was bedeuten diese Zahlen?
ECMAScript wird jährlich überarbeitet; jedes Jahr erscheint eine neue Version, etwa ES2024, ES2025 und ES2026. ES14 und ES15 sind nicht zwei vollständig verschiedene Standards. ES15 ist schlicht die auf ES14 aufbauende Überarbeitung.
- Steht in einem Repository „ES8+“, bedeutet das: Eine JavaScript-Engine mit ES8- (ES2017-) oder neuerer Unterstützung kann den Code ohne Konverter ausführen.
- Die Anforderung „Kenntnisse in ES8+“ ist nicht vernünftig. „Kenntnisse der ES8-Funktionen“, etwa
async/await, wäre sinnvoll. Ein eigenständiges Wissensgebiet „ES8+“ gibt es nicht. Gemeint ist vermutlich die aktuelle Version, also ES.Next.
Reicht ES6?
Manche Ausschreibungen verlangen nur Erfahrung mit ES6. Wörtlich genommen müssten Sie dann die async/await-Funktionen aus ES8, dynamische Imports aus ES10, Promise.allSettled aus ES11 oder Object.groupBy aus ES15 nicht kennen und wären dennoch theoretisch der beschriebene „Senior JavaScript Developer“. In der Praxis wird von modernen Entwicklern erwartet, die jährlichen Erweiterungen zu verfolgen.
Läuft ECMAScript-konformer Code in jeder Umgebung?
Die Kompatibilitätslage hat sich deutlich verändert. ES6 von 2015 wird heute von praktisch 100 Prozent moderner Browser und Node.js-Umgebungen nativ unterstützt. Auch ES2020- und ES2021-Funktionen haben nahezu universelle native Unterstützung.
Sie müssen Code nur kompilieren, wenn:
- Sie extrem alte Plattformen wie den inzwischen abgekündigten Internet Explorer ansprechen.
- Sie experimentelle Vorschläge (ES.Next) einsetzen, die TC39 noch nicht finalisiert hat oder Browser-Engines noch nicht nativ umsetzen.
Für alte Umgebungen verwenden Entwickler Transpiler:
- Babel: konvertiert ECMAScript-2015+-Code in eine ES5-kompatible Fassung.
- SWC und esbuild: moderne, sehr schnelle, in Rust beziehungsweise Go geschriebene Transpiler und Build-Werkzeuge, die Babel in modernen Build-Systemen wie Vite weitgehend abgelöst haben.
Als Plugins in Bundlern sorgen diese Werkzeuge dafür, dass moderner JavaScript-Code sicher für ältere Laufzeitumgebungen kompiliert wird.
Wenn dieser Artikel hilfreich war
Ein Link von einer passenden Seite Ihrer Website oder das Teilen in sozialen Medien hilft diesem Artikel, mehr Menschen zu erreichen. Vielen Dank.
Hinweise zu Links und Marke →