BUN(JavaScript執行環境)

BUN(JavaScript執行環境)

本詞條是多義詞,共2個義項
更多義項 ▼ 收起列表 ▲

Bun是由Jarred Sumner設計,於2021年公開發布的JavaScript運行時,旨在解決Node.js的複雜性和性能限制。它使用Zig語言編寫,並基於WebKit的JavaScriptCore引擎構建。

Bun是一個快速、一體化的工具包,集成了運行時、包管理器、測試運行器、打包器等功能,設計為Node.js的直接替代品。其1.3版本標誌著它從運行時工具演變為功能完備的全棧JavaScript開發平台。

基本介紹

  • 軟體名稱:Bun
  • 軟體平台:Windows、Linux、MacOs 
  • 上線時間:2022年7月5日 
  • 最近更新時間:2026年1月29日 
  • 軟體語言:Zig
  • 開發商:Jarred Sumner 
  • 軟體授權: MIT 
  • 軟體版本:1.3
產生背景,發展歷程,核心技術,重要事件,主要功能,

產生背景

Bun 是一個JavaScript執行環境,原生支持 JavaScript、TypeScript 和JSX/TSX,以運行效率為特點。它由 Jarred Sumner 設計,並於 2021 年公開發布。Bun 的開發目的是為了解決 Node.js 的複雜性和性能限制,作為其替代方案。它是用 Zig 編寫的,並構建在WebKit的 JavaScriptCore 引擎上。Bun 旨在提供 Node.js、Webpack、Babel 和 Yarn 等工具的功能。

發展歷程

Bun 由 Jarred Sumner 設計,於 2021 年公開發布。
2024年8月,BUN獲得 1.1.22 版本更新,號稱進一步提升了性能,同時大幅減少了 RAM 使用量,並改進了 Node.js 的兼容性。
2025年10月,Bun發布了1.3版本,引入了對前端開發、資料庫集成和Web標準的增強支持,並進行了性能最佳化。

核心技術

Bun使用Zig語言編寫,並構建在WebKit的JavaScriptCore引擎上,而非Node.js和Deno使用的V8引擎,這使其啟動速度更快、記憶體占用更低。作為一體化工具包,Bun集成了運行時、與npm兼容的包管理器、原生測試運行器、原生打包器以及原生轉譯器,原生支持TypeScript、JSX和TSX。Bun還內置了SQLite3客戶端,並保持對Node.js API的高度兼容,使得許多原生Node模組無需修改即可使用。
在性能方面,Bun的包管理器安裝速度據稱比npm快20倍到100倍。特定代碼循環測試中,Bun完成時間遠低於Node.js。創建React套用的速度也快於使用create-react-app。Bun進程啟動速度比Node.js快4倍。
自1.3版本起,Bun從“快速運行時”演變為“全棧JavaScript開發平台”。該版本新增了對前端開發的一級支持,可直接運行HTML檔案並啟動集成原生轉譯與打包能力的開發伺服器。內置資料庫支持從PostgreSQL擴展到MySQL、MariaDB和SQLite,並新增了Redis客戶端,其性能據稱是ioredis庫的7.9倍以上。Bun.serve()引入了內置路由系統。包管理器增加了隔離安裝模式、依賴目錄、安全掃描API等企業級特性。測試運行器獲得了與VS Code Test Explorer的深度集成及並發測試支持。加密性能顯著提升,DiffieHellman和Cipheriv/Decipheriv速度提升約400倍。其他最佳化包括JavaScript記憶體占用降低10-30%、macOS上Bun.build快60%、postMessage字元串傳遞速度提升500倍等。
Midjourney等公司已在生產環境中使用Bun。

重要事件

2025年10月10日,高性能JavaScript運行時Bun發布了1.3版本。此次更新增加了對前端開發的支持,開發者可以直接運行HTML檔案並啟動開發伺服器。
該版本擴展了內置資料庫支持,引入了內置路由系統、原生Cookie API、包管理器特性、測試運行器,並提升了加密等性能。此次更新使Bun從一個運行時工具擴展為開發平台。

主要功能

開發者可以輕鬆使用CommonJS和ECMAScript模組,而不會在Node.js的模組解析過程中遇到複雜問題。作為Node.js的直接替代品,可以切換到Bun作為運行時,只需最小的應用程式更改。可以將特定的Bun功能(如實用程式功能,包管理或API)集成到現有的Node.js代碼庫中,而無需完全遷移。即使完全過渡到Bun,仍然可以訪問Node.js API和npm包,確保一個熟悉的開發環境,包括各種工具和庫。

相關詞條

熱門詞條

聯絡我們