ECMAScript 2018
نقشهگذاری نامگذاری JavaScript از ES1، ES2، ES3، ES5 و ES6 شروع شده است.
اما ECMAScript 2016 و 2017 به عنوان ES7 و ES8 نامگذاری نشدهاند.
از سال 2016، نسخههای جدید با نام سال نامگذاری شدهاند (ECMAScript 2016/2017/2018).
ویژگیهای جدید ECMAScript 2018
این فصل جدیدترین ویژگیهای ECMAScript 2018 را معرفی میکند:
- جریانگذاری همزمان
- Promise Finally
- ویژگی Rest Property شیء
- ویژگیهای جدید RegExp
جریانگذاری همزمان JavaScript
ECMAScript 2018 Iteratorهای همزمان و اشیاء قابل جریانگذاری را اضافه کرده است.
با استفاده از جریانهای همزمان، ما میتوانیم در for/of
در حلقهها استفاده میشود await
کلمه کلیدی.
مثال
for await () {}
Firefox و Safari اولین مرورگرهایی هستند که از جریانهای همزمان JavaScript پشتیبانی میکنند:
Chrome و Firefox اولین مرورگرهایی هستند که تمام ویژگیهای جدید RegExp را پشتیبانی میکنند: | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 63 | Edge 79 | Firefox 57 | Safari 11 | Opera 50 |
دسامبر 2017 | janvier 2020 | نوامبر 2017 | سپتامبر 2017 | janvier 2018 |
Promise.finally در JavaScript استفاده میکند
ECMAScript 2018 از Promise.finally
ایجاد کامل Promise Object را به پایان رساند:
مثال
let myPromise = new Promise(); myPromise.then(); myPromise.catch(); myPromise.finally();
Chrome و Firefox اولین مرورگرهایی هستند که از Promise.finally
از مرورگرها:
Chrome و Firefox اولین مرورگرهایی هستند که تمام ویژگیهای جدید RegExp را پشتیبانی میکنند: | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 63 | Edge 18 | Firefox 58 | Firefox 55 | Opera 50 |
دسامبر 2017 | november 2018 | janvier 2018 | juillet 2017 | janvier 2018 |
ویژگی Rest Property شیء در JavaScript
ECMAScript 2018 ویژگی Rest Property را اضافه کرده است.
این به ما اجازه میدهد که یک شیء را بشکنیم و باقیماندهها را در یک شیء جدید جمعآوری کنیم:
مثال
let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 }; x; // 1 y; // 2 z; // { a: 3, b: 4 }
Chrome، Firefox و Opera اولین مرورگرهایی هستند که از ویژگی Rest Property از اشیاء پشتیبانی میکنند:
Chrome و Firefox اولین مرورگرهایی هستند که تمام ویژگیهای جدید RegExp را پشتیبانی میکنند: | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 60 | Edge 79 | Chrome 60 | Firefox 55 | Safari 11.1 |
Opera 47 | janvier 2020 | mars 2018 | juillet 2017 | mars 2018 |
آگوست 2017
ویژگیهای جدید JavaScript RegExp
- ECMAScript 2018 4 ویژگی جدید RegExp اضافه کرده است:
- کدگذاریهای Unicode (\p{...})
- استدلالهای پسروی (Lookbehind Assertions) (?<= ) و (?<! )
- گروههای قابلیت نامگذاری (Named Capture Groups)
علامت (dotAll) s
Chrome و Firefox اولین مرورگرهایی هستند که تمام ویژگیهای جدید RegExp را پشتیبانی میکنند: | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 64 | Edge 79 | Firefox 78 | Safari 12 | Opera 51 |
janvier 2018 | janvier 2020 | juin 2020 | septembre 2018 | février 2018 |