Node.js,這一在開發(fā)者中享有盛譽(yù)的開源跨平臺(tái)Javascript運(yùn)行環(huán)境,近日迎來(lái)了其24.0版本的正式發(fā)布。此次更新帶來(lái)了顯著的性能提升、安全強(qiáng)化以及更加流暢的開發(fā)體驗(yàn),旨在滿足日益增長(zhǎng)的開發(fā)者需求。
新版本中,Node.js的一大亮點(diǎn)是V8 Javascript引擎的升級(jí),現(xiàn)已躍升至13.6版本。這一升級(jí)引入了多項(xiàng)新特性,包括Float16Array、顯式資源管理、RegExp.escape、WebAssembly Memory64以及實(shí)用的Error.isError方法,這些功能無(wú)疑為開發(fā)者提供了更強(qiáng)大的工具集,以構(gòu)建現(xiàn)代化的應(yīng)用。
在異步上下文追蹤方面,AsyncLocalStorage默認(rèn)采用了AsyncContextframe進(jìn)行優(yōu)化,這一改進(jìn)使得復(fù)雜應(yīng)用的性能與穩(wěn)定性得到了顯著提升。同時(shí),這些功能的加入也緊跟網(wǎng)頁(yè)標(biāo)準(zhǔn)的演進(jìn),為開發(fā)者提供了更加豐富的選項(xiàng)。
npm 11的集成是Node.js 24.0版本的另一大亮點(diǎn)。新版本不僅提升了包管理的效率,還增強(qiáng)了安全協(xié)議,并改善了與現(xiàn)代Javascript包的兼容性。Windows平臺(tái)的編譯工具也從MSVC全面過(guò)渡至ClangCL,確保了不同開發(fā)環(huán)境之間的一致性。HTTP客戶端也迎來(lái)了升級(jí),現(xiàn)已支持更多現(xiàn)代HTTP特性的Undici 7。
在易用性方面,Node.js 24.0同樣帶來(lái)了顯著改進(jìn)。URLPattern API現(xiàn)已全局可用,開發(fā)者無(wú)需顯式導(dǎo)入即可輕松使用。實(shí)驗(yàn)性權(quán)限模型也經(jīng)過(guò)了升級(jí),從Node.js 20版本的復(fù)雜標(biāo)志簡(jiǎn)化為了更直觀的“–permission”,這一改進(jìn)有助于推動(dòng)其在更廣泛場(chǎng)景下的應(yīng)用。
新版Node.js還改進(jìn)了測(cè)試運(yùn)行模塊,能夠自動(dòng)等待子測(cè)試完成,從而免去了開發(fā)者手動(dòng)管理Promise的繁瑣過(guò)程,有效降低了出錯(cuò)風(fēng)險(xiǎn)。這一改進(jìn)無(wú)疑將提升開發(fā)效率,減少調(diào)試時(shí)間。
然而,值得注意的是,此版本也棄用或移除了部分API。例如,url.parse已被更加先進(jìn)的WHATWG URL API所取代,而tls.createSecurePair等功能也被移除。這些變化雖然可能帶來(lái)一定的適應(yīng)成本,但也是為了推動(dòng)Node.js向更加現(xiàn)代化、高效的方向發(fā)展。