ECMAScript 2018
Die Benennungskonventionen in JavaScript beginnen mit ES1, ES2, ES3, ES5 und ES6.
ECMAScript 2016 und 2017 werden jedoch nicht ES7 und ES8 genannt.
Seit 2016 werden neue Versionen nach Jahren benannt (ECMAScript 2016/2017/2018).
Neue Funktionen in ECMAScript 2018
Dieses Kapitel stellt die neuen Funktionen von ECMAScript 2018 vor:
- Asynchrone Iteration
- Promise Finally
- Objekt Rest-Attribute
- Neue RegExp-Eigenschaften
JavaScript asynchrone Iteration
ECMAScript 2018 hat asynchrone Iteratoren und iterierbare Objekte hinzugefügt.
Durch die asynchrone Iteration können wir for/of
im Loop verwendet await
Schlüsselwort.
Beispiel
for await () {}
Firefox und Safari sind die ersten Browser, die die asynchrone Iteration in JavaScript unterstützen:
Chrome und Firefox sind die ersten Browser, die alle neuen RegExp-Funktionen unterstützen: | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 63 | Edge 79 | Firefox 57 | Safari 11 | Opera 50 |
Dezember 2017 | Januar 2020 | November 2017 | September 2017 | Januar 2018 |
JavaScript Promise.finally
ECMAScript 2018 verwendet Promise.finally
Die vollständige Implementierung des Promise-Objekts ist abgeschlossen:
Beispiel
let myPromise = new Promise(); myPromise.then(); myPromise.catch(); myPromise.finally();
Chrome und Firefox sind die ersten, die Promise.finally
Browser:
Chrome und Firefox sind die ersten Browser, die alle neuen RegExp-Funktionen unterstützen: | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 63 | Edge 18 | Firefox 58 | Safari 11.1 | Opera 50 |
Dezember 2017 | November 2018 | Januar 2018 | März 2018 | Januar 2018 |
JavaScript Objekt Rest-Attribute
ECMAScript 2018 hat die Rest-Attribute hinzugefügt.
Dies ermöglicht es uns, ein Objekt zu zerstören und die verbleibenden Teile in ein neues Objekt zu sammeln:
Beispiel
let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 }; x; // 1 y; // 2 z; // { a: 3, b: 4 }
Chrome, Firefox und Opera sind die ersten Browser, die die Rest-Attribute von Objekten unterstützen:
Chrome und Firefox sind die ersten Browser, die alle neuen RegExp-Funktionen unterstützen: | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 60 | Edge 79 | Firefox 55 | Safari 11.1 | Opera 47 |
Juli 2017 | Januar 2020 | August 2017 | März 2018 | August 2017 |
Neue JavaScript RegExp-Funktionen
Neue JavaScript RegExp-Funktionen
- ECMAScript 2018 hat 4 neue RegExp-Features hinzugefügt:
- Unicode-Attribut-Flüchtungen (\p{...})
- Rückwärtsprädikate (Lookbehind Assertions) (?<= ) und (?<! )
- Benannte K capture groups
s (dotAll) -Flagge
Chrome und Firefox sind die ersten Browser, die alle neuen RegExp-Funktionen unterstützen: | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 64 | Edge 79 | Firefox 78 | Safari 12 | Opera 51 |
Januar 2018 | Januar 2020 | Juni 2020 | September 2018 | Februar 2018 |