Das Buch zu ECMAScript 5 Kapitel für Kapitel

Jeder Aspekt des neuen JavaScript-Standards nebst allen Hintergründen. Die Inhalte basieren lose auf einer Artikelserie des Autors, wurden aber für das Buch aktualisiert, erheblich erweitert und umfassen jetzt jedes Detail des neuen Standards.

Die Vorgeschichte von ECMAScript 5

Die letzte veröffentlichte Version des ECMAScript-Standards war ES3. Wie es sein kann, dass auf Version 3 direkt 5 folgt und warum JavaScript überhaupt JavaScript heißt ist Gegenstand des ersten Kapitels.

Der Strict Mode

Das alte Testament der JavaScript-Community trägt nicht umsonst den Namen „JavaScript: The Good Parts“, denn an „Bad Parts“ herrscht in JS kein Mangel. Der in ES5 eingeführte Strict Mode bildet ein JavaScript-Subset ohne all diese mißratenen Features und bereitet auch schon ECMAScript 6 vor.

Property Descriptors und gesicherte Objekte

Bisher konnten nur Browser und JS-Engines Objekte erstellen, die schreibgeschützte Eigenschaften hatten oder deren Eigenschaften nicht in for-in-Schleifen auftauchten. Mit den in ECMAScript 5 eingeführten Property Descriptors und den dazugehörigen APIs hat nun jeder JS-Entwickler diese Möglichkeiten.

Function.prototype.bind

Die einzige handfeste ES5-Neuheit aus dem Reich der Funktionen hat es in sich, stellt sie allein doch alle bereit, was man braucht um bound functions zu erstellen und sich das Leben mit partial application zu erleichtern.

Neuerungen für Objekte

Neben Property Descriptors gibt es noch ein paar neue Features für Objekte. So gibt es einige neue Helferlein und es ist erstmals möglich, Objekte mit null als Prototyp zu erstellen.

Neuerungen für Arrays

Jede bessere JavaScript-Library implementiert Array-Methoden wie map(), filter() und every(). Dank ECMAScript werden diese und viele andere alltägliche Helferlein in den nativen Sprachschatz von JavaScript aufgenommen.

Kleine Änderungen und Verbesserungen

Viele kleine ES5-Ergänzungen wie ein natives JSON-Objekt (das mehr kann, als nur A nach B zu konvertieren) sowie neue Funktionen für Date und String werden selbst von alten Browsern unterstützt und machen das Programmierer-Leben leichter.

Fazit und Ausblick

ECMAScript 5 schön und gut, aber was taugt es und wann kommt ECMAScript 6? Diese Fragen beantwortet das letzte Kapitel und gibt Tipps für den Einsatz von ECMAScript 5 in heutigen Browsern.

Anhang

Eine zusammenfassende Referenz aller Neuheiten mit Kompatibilitätshinweisen und Links zu Spezifikationen und Polyfills.