2022 年 6 月 22 日,第 123 屆 ECMA 大會批準了 ECMAScript 2022 語言規(guī)范,這意味著它現(xiàn)在正式成為標準。我們現(xiàn)在來看一下最新的ES13的幾大超贊功能:
1. 支持在最外層寫await
當我們碰到一個promise的時候,我們可以使用await來暫停當前代碼的執(zhí)行,等到這個promise被settled(fulfilled或者rejected)了,我們才繼續(xù)當前代碼的執(zhí)行。有個很頭疼的地方就是一定要在一個async的函數(shù)里面使用而不能在全局作用域里面使用。ES13出來后,就舒服多了,可以直接全局寫await,無需在前面包裹async函數(shù)
2. at() 方法來索引元素
以前要訪問數(shù)組倒數(shù)第N個元素的時候需要通過數(shù)組長度再減去N個元素來獲取,而ES13的at()函數(shù)幫你寫出更優(yōu)雅的代碼!使用新的new()方法,當我們想要訪問倒數(shù)第N個元素時,我們只需要傳入-N給at()即可:
3. Object.hasOwn()來檢查某個對象自身是否擁有某個屬性
以前我們檢查對象自身是否擁有某個屬性通過Object.prototype.hasOwnProperty()來實現(xiàn),但這個方法是不受保護的,而且當一個對象是通過Object.create(null)創(chuàng)建出來的具有null原型的對象時,你想在這個對象上面調用hasOwnProperty這個方法是會報錯。ES13的Object.hasOwn()函數(shù)接收兩個參數(shù),一個是對象,一個是屬性,如果這個對象本身就有這個屬性的話,這個函數(shù)就會返回true,否則就返回false,從而方便安全的幫助我們檢查對象是否擁有某個屬性
4. findLast()和findLastIndex()從數(shù)組的末端開始尋找某個滿足條件的元素
平時我們都會使用find()和findIndex()來在數(shù)組中找到第一個滿足某個條件的元素和位置,但如果知道在數(shù)組后面,想提升性能需要從后面開始找的時候會比較麻煩,ES13新出的findLast()和findLastIndex()函數(shù)會從數(shù)組的末端開始尋找某個滿足條件的元素,從而實現(xiàn)在從后面開始查找的時候性能更大提升。
5. 正則表達式匹配字符串的時候支持返回開始和結束索引
之前我們通過正則查找的時候只能獲取正則表達式匹配到的子字符串的開始索引,ES13支持在給正則表達式添加一個d的標記來讓它在匹配的時候給我們既返回匹配到的子字符串的起始位置還返回其結束位置
如沒特殊注明,文章均為方維網(wǎng)絡原創(chuàng),轉載請注明來自http://pdcharm.com/news/6541.html