ES2020 中 Javascript 10 個你應(yīng)該知道的新功能

1: BigInt
pow(2, 53) \- 1。但是,BigInt 不受此限制。
n。這個?n?說明這是一個 BigInt,Javascript 引擎應(yīng)該特殊處理(不管是 V8,還是其它引擎)。2:動態(tài)引入

3: 空值合并
nullish?值,而不是?falsely?值。你或許會問:nullish和?falsely?之間有什么不同呢?falsely。比如:空字符串、數(shù)字 0、undefined?、null、?false?、NaN?等。undefined?或者?null,就像變量可以是一個空字符串甚至是一個假值。??。
4:可選鏈
undefined。
5: Promise.allSettled
Promise.allSettled?方法接收一組 Promise,并且會返回所有的結(jié)果 - 而不管是 resolved 還是 rejected。race?和?all。它只會“運行所有的 promise - 而不關(guān)心它們的結(jié)果”。
6: String#matchAll
matchAll?是?String?原型鏈上的一個新增的方法,它可以關(guān)聯(lián)正則表達(dá)式。它返回一個迭代器,一個接一個的返回所有匹配的組。我們來看一個演示:
7: globalThis
window,Node 中是?global,web workers 中是?self。如果,還有更多的運行環(huán)境,這個對象也會有不同。globalThis?對象,它始終會引用著全局對象,而不用關(guān)系代碼在哪運行:
8:導(dǎo)出模塊的命名空間
import?*?as?utils?from?'./utils.mjs'
export?語法:export?*?as?utils?from?'./utils.mjs'
import?*?as?utils?from?'./utils.mjs'
export?{?utils?}
9:明確定義 for-in 的順序
for (x in y)?的順序。盡管,在此之前瀏覽器實現(xiàn)了一致的順序,但是,現(xiàn)在已經(jīng)被納入到 ES2020 的官方規(guī)范中了。10: import.meta
import.meta?是由 ECMAScript 創(chuàng)建實現(xiàn)的,默認(rèn)為?null。module.js?:import.meta?對象訪問模塊的相關(guān) meta 信息:console.log(import.meta);?//?{?url:?"file:///home/user/module.js"?}
url?屬性的對象,該屬性代表著模塊的 URL。它可能是獲取腳本的 URL(對于外部腳本來說),或者是包含模塊文檔的基礎(chǔ)URL(對于內(nèi)聯(lián)腳本來說)。專注分享當(dāng)下最實用的前端技術(shù)。關(guān)注前端達(dá)人,與達(dá)人一起學(xué)習(xí)進(jìn)步!
長按關(guān)注"前端達(dá)人"

評論
圖片
表情
