ECMAScript 2018

Kivinio cha jina cha JavaScript kilianza kwa ES1, ES2, ES3, ES5 na ES6.

Kamwe, ECMAScript 2016 na 2017 hayajaelelwa na ES7 na ES8.

Kuanzia 2016, vizote vya uharibifu vimeundwa kwa miaka (ECMAScript 2016/2017/2018).

Vipengeni vya kipenzi cha ECMAScript 2018

Lengo hili linatoa vipengeni vya kipenzi cha ECMAScript 2018:

  • Uharibifu
  • Promise Finally
  • Kiwango cha Rest cha kipengele
  • Jina jipya cha RegExp

Uharibifu wa JavaScript

ECMAScript 2018 inaongeza kikuu cha uharibifu na vipengele vya kufaa vya uharibifu.

Kwa mbinu ya uharibifu, tunaweza kuwa na: for/of inaendelea katika kikuu cha: await Kichwa cha nia.

Mfano

for await () {}

Firefox na Safari ni wanawili wa kwanza wa kusimamia mbinu ya uharibifu wa JavaScript:

Chrome IE Firefox Safari Opera
Chrome 63 Edge 79 Firefox 57 Safari 11 Opera 50
Desemba 2017 January 2020 Novemba 2017 Sepeti 2017 January 2018

Promise.finally cha JavaScript

ECMAScript 2018 inatumia Promise.finally Kamilika kufanya kipengele cha Promise:

Mfano

let myPromise = new Promise();
myPromise.then();
myPromise.catch();
myPromise.finally();

Chrome na Firefox ni wanawili wa kwanza wa kusimamia: Promise.finally wa kifaa:

Chrome IE Firefox Safari Opera
Chrome 63 Edge 18 Firefox 58 Safari 11.1 Opera 50
Desemba 2017 Novemba 2018 January 2018 March 2018 January 2018

Kiwango cha Rest cha kipengele cha JavaScript

ECMAScript 2018 inaongeza kiwango cha Rest cha kipengele.

Hii inaruhusu tuweza kumaliza kipengele cha kifaa na kusafisha vipengele vya kipengele kipya:

Mfano

let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 };
x; // 1
y; // 2
z; // { a: 3, b: 4 }

Chrome, Firefox na Opera ni wanawili wa kwanza wa kusimamia kiwango cha Rest cha kipengele:

Chrome IE Firefox Safari Opera
Chrome 60 Edge 79 Firefox 55 Safari 11.1 Opera 47
July 2017 January 2020 August 2017 March 2018 August 2017

New JavaScript RegExp features

ECMAScript 2018 added 4 new RegExp features:

  • Unicode property escapes (\p{...})
  • Lookbehind assertions (?<= ) and (?<! )
  • Named capture groups
  • s (dotAll) flag

Chrome and Firefox were the first browsers to support all new RegExp features:

Chrome IE Firefox Safari Opera
Chrome 64 Edge 79 Firefox 78 Safari 12 Opera 51
January 2018 January 2020 June 2020 September 2018 February 2018