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 في الجسم
- ميزات RegExp الجديدة
التكرار المتسلسل في JavaScript
تم إضافة مبدأ التكرار المتسلسل والمجالات القابلة للتكرار في ECMAScript 2018.
من خلال التكرار المتسلسل، يمكننا في 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 | شهر يناير 2020 | نوفمبر 2017 | سبتمبر 2017 | شهر يناير 2018 |
JavaScript Promise.finally
استخدم ECMAScript 2018 Promise.finally
تم إكمال تنفيذ جسم Promise بشكل كامل:
مثال
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 | نوفمبر 2018 | شهر يناير 2018 | شهر يوليو 2017 | شهر يناير 2018 |
خصائص Rest في جسم JavaScript
تم إضافة خاصية Rest في ECMAScript 2018.
هذا يسمح لنا بكسر الجسم وجمع الباقي في جسم جديد:
مثال
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 في خاصية الأجسام:
Chrome و Firefox هما أول المتصفحات التي تدعم جميع ميزات RegExp الجديدة: | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 60 | Edge 79 | Chrome 60 | Firefox 55 | Safari 11.1 |
Opera 47 | شهر يناير 2020 | شهر مارس 2018 | شهر يوليو 2017 | شهر مارس 2018 |
شهر أغسطس 2017
ميزات RegExp الجديدة في JavaScript
- قام ECMAScript 2018 بإضافة 4 خصائص جديدة إلى RegExp:
- هروب الخاصية Unicode (\p{...})
- التأكيدات الخلفية (Lookbehind Assertions) (?<= ) و (?<! )
- مجموعات التقاطع المسماة (Named Capture Groups)
علامة (dotAll) س
Chrome و Firefox هما أول المتصفحات التي تدعم جميع ميزات RegExp الجديدة: | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 64 | Edge 79 | Firefox 78 | Safari 12 | Opera 51 |
شهر يناير 2018 | شهر يناير 2020 | شهر يونيو 2020 | شهر سبتمبر 2018 | شهر فبراير 2018 |