JavaScript-Strings in Firefox werden schlanker
Kommentare

Obwohl es in der internen String-Repräsentation bei Mozillas JavaScript Engine in der Vergangenheit schon viele Änderungen gegeben hat, war doch eines immer gleich geblieben: String Characters wurden

Obwohl es in der internen String-Repräsentation bei Mozillas JavaScript Engine in der Vergangenheit schon viele Änderungen gegeben hat, war doch eines immer gleich geblieben: String Characters wurden schon immer als Sequenz von UTF-16 Code Units gespeichert. Das wird sich nun ändern.

Ab sofort kann die JavaScript Engine in Mozilla Firefox nämlich auch Latin1 Strings speichern. Dabei handelt es sich um derartige Strings, die nur die ersten 256 Unicode Code Points verwenden. Anstelle von zwei Bytes pro Zeichen kommt hier nur eines zum Einsatz.

Neue JavaScript Strings für weniger Speicherverbrauch

Entwickler werden von dieser Änderung nicht besonders viel mitbekommen, da sich ihr JavaScript-Code unter den neuen Latin1 Strings exakt identisch verhält. Hauptziel war die Speichereinsparung, was wohl auch geglückt sein dürfte, wenn wir den von Mozilla-Entwickler Jan de Mooij angefertigten Statistiken glauben können (siehe Diagramm). Daneben wurde auch die Performance des Firefox in einigen Benchmarks gesteigert.

© Mozilla

Von jetzt an werden nahezu alle JavaScript Strings anhand des Latin1-Kodierungsmusters abgespeichert – sogar solche aus Sprachen ohne lateinisches Schriftsystem. Schließlich kommen auch auf dortigen Websites häufig Latin1 Strings für Property-Namen, DOM Strings und andere Identifier zum Einsatz. Das hat de Mooij anhand der Top 10 der meistaufgerufenen chinesischen Websites erkennen können.

Die Latin1 Strings sind derzeit noch in der JavaScript Engine des Firefox Nightly zu Hause, kommende Woche sollen sie es dann in den Aurora-Browser schaffen. Mit Firefox 33 sollen sie schließlich offiziell ausgeliefert werden.

Aufmacherbild: balance von Shutterstock / Urheberrecht: Luiz Rocha

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -