Zum Hauptinhalt springen

V8 Veröffentlichung v5.0

· 3 Minuten Lesezeit
das V8-Team

Der erste Schritt im V8-Veröffentlichungsprozess ist eine neue Branching vom Git-Master direkt bevor Chromium für einen Chrome-Beta-Meilenstein (etwa alle sechs Wochen) brancht. Unsere neueste Veröffentlichungs-Branch ist V8 v5.0, die bis zum Erscheinen einer stabilen Version zusammen mit Chrome 50 Stable im Beta-Status bleiben wird. Hier sind die Highlights der neuen, entwicklerorientierten Features in dieser Version von V8.

hinweis

Hinweis: Die Versionsnummer 5.0 trägt keine semantische Bedeutung und markiert keine Hauptveröffentlichung (im Gegensatz zu einer kleineren Veröffentlichung).

Verbesserte ECMAScript 2015 (ES6)-Unterstützung

V8 v5.0 enthält eine Reihe von ES2015-Features im Zusammenhang mit der Verarbeitung regulärer Ausdrücke (Regex).

Unicode-Flag für RegExp

Das Unicode-Flag für RegExp, u, schaltet einen neuen Unicode-Modus für die Verarbeitung regulärer Ausdrücke ein. Das Unicode-Flag behandelt Muster und Regex-Strings als eine Reihe von Unicode-Codepoints und ermöglicht außerdem neue Syntax für Unicode-Codepoint-Escapes.

/😊{2}/.test('😊😊');
// false

/😊{2}/u.test('😊😊');
// true

/\u{76}\u{38}/u.test('v8');
// true

/\u{1F60A}/u.test('😊');
// true

Das u-Flag sorgt außerdem dafür, dass das .-Atom (auch bekannt als der Single-Character-Matcher) jedes Unicode-Symbol und nicht nur die Charaktere in der Basic Multilingual Plane (BMP) matcht.

const string = 'der 🅛 Zug';

/der\s.\szug/.test(string);
// false

/der\s.\szug/u.test(string);
// true

Anpassungshooks für RegExp

ES2015 beinhaltet Hooks für RegExp-Unterklassen, um die Semantik des Matchings zu verändern. Unterklassen können Methoden überschreiben, die Symbol.match, Symbol.replace, Symbol.search und Symbol.split heißen, um das Verhalten von RegExp-Unterklassen in Bezug auf String.prototype.match und ähnliche Methoden zu ändern.

Leistungsverbesserungen bei ES2015- und ES5-Features

Version 5.0 bringt auch einige bemerkenswerte Leistungsverbesserungen für bereits implementierte ES2015- und ES5-Features.

Die Implementierung von Rest-Parametern ist 8-10x schneller als in der vorherigen Version, was es effizienter macht, große Argumentmengen in ein einziges Array nach einem Funktionsaufruf zu sammeln. Object.keys, nützlich zum Iterieren über die aufzählbaren Eigenschaften eines Objekts in derselben Reihenfolge wie for-in, ist jetzt etwa 2x schneller.

V8 API

Bitte sehen Sie sich unsere Zusammenfassung der API-Änderungen an. Dieses Dokument wird in der Regel einige Wochen nach jeder größeren Veröffentlichung regelmäßig aktualisiert.

Entwickler mit einem aktiven V8-Checkout können git checkout -b 5.0 -t branch-heads/5.0 verwenden, um mit den neuen Features in V8 5.0 zu experimentieren. Alternativ können Sie Chrome's Beta-Kanal abonnieren und die neuen Features bald selbst ausprobieren.