ECMAScript 2018經過委員會TC39在1月23到25日會議後終於定案,這次的更新主要增加2個功能,分別是非同步疊代(Asynchronous Iteration)以及Rest/Spread屬性,並更新了正規表示式(Regular Expression)語法。

在ECMAScript 6的時候,增加了同步疊代功能,讓JavaScript內建支援同步疊代資料,但是當資料來源是從非同步的文件或是讀取自HTTP連結,處理起來就麻煩了,因此ECMAScript 2018新增的非同步疊代,讓開發者便於處理非同步抓取的資料。非同步疊代器帶來新的程式碼編寫模式,結合非同步疊代器與產生器(Generator)結合使用,可以讓程式碼被延遲執行,而不互相阻擋。

Rest/Spread語法在ECMAScript 2015的時候,就已經支援在陣列中使用,而ECMAScript 2018則增加其屬性,現在於文字物件也能使用Rest/Spread語法。

正規表示式在ECMAScript 2018中更新很多,不過對Python等其他先進語言來說,或許只是後來居上的程度。這次修正了正規表示式的後視斷言(Lookbehind Assertion)的缺點,現在環視斷言(Lookarounds Assertions)可以有前視與後視的功能,後視斷言可以匹配字符但不抓取該字符,例如匹配$符號,但抓取的字串中不包含$字號。另外,正規表示式部分,這次還更新了Unicode屬性跳脫,以及toString()函式。

熱門新聞

Advertisement