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 ของแอ็ปลิคิชัน Object
  • คุณสมบัติ 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 January 2020 พฤศจิกายน 2017 กันยายน 2017 January 2018

JavaScript Promise.finally

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 พฤศจิกายน 2018 January 2018 July 2017 January 2018

คุณสมบัติ Rest ของ JavaScript Object

ECMAScript 2018 ได้เพิ่มคุณสมบัติ Rest。

นี่จะทำให้เราสามารถทำลายแอ็ปลิคิชัน Object และรวบรวมสิ่งที่เหลือไว้เข้าไปในแอ็ปลิคิชัน Object ใหม่:

ตัวอย่าง

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 ของแอ็ปลิคیشัน Object อย่างแรก:

Chrome Firefox ǵһ批֧ȫµ RegExp ȫı IE Firefox Safari Opera
Chrome 60 Edge 79 Chrome 60 Firefox 55 Safari 11.1
Opera 47 January 2020 March 2018 July 2017 March 2018

August 2017

µ JavaScript RegExp ȫ

  • ECMAScript 2018 4 µ RegExp ȫ
  • Unicode ʵ (\p{...})
  • ΢ǰ (Lookbehind Assertions) (?<= ) (?<! )
  • 命名ɼ (Named Capture Groups)

s (dotAll) ־

Chrome Firefox ǵһ批֧ȫµ RegExp ȫı IE Firefox Safari Opera
Chrome 64 Edge 79 Firefox 78 Safari 12 Opera 51
January 2018 January 2020 June 2020 September 2018 February 2018