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