Bun导言
简介
Bun 是一个用于 JavaScript 和 TypeScript 应用的全能工具包。它以单个可执行文件的形式发布。
其核心是 Bun 运行时,一个快速 JavaScript 运行时,旨在作为 Node.js 的直接替代品。
它采用 Rust 编写,并由 JavaScriptCore 驱动,从而减少了启动时间和内存占用。
提示
截至 2026-07-16,bun仍在快速迭代中,不建议在企业级或大型项目中使用。
安装
使用npm
npm install -g bun
安装后验证
bun --version
指定版本安装
# windows powershell
iex "& {$(irm https://bun.com/install.ps1)} -Version 1.3.3"
# linux & macos
curl -fsSL https://bun.com/install | bash -s "bun-v1.3.3"
升级
bun upgrade
# Upgrade to latest canary
bun upgrade --canary
# Switch back to stable
bun upgrade --stable
卸载
npm uninstall -g bun
Bun 包含什么
运行时:以近乎零开销执行 JavaScript/TypeScript 文件和包脚本。
包管理器:使用 bun install 实现快速安装、工作区、覆盖和审计。
测试运行器:兼容 Jest、TypeScript 优先的测试,支持快照、DOM 和监视模式。
打包工具:原生打包 JS/TS/JSX,支持代码拆分、插件和 HTML 导入。
什么是运行时?
JavaScript(或更正式地称为 ECMAScript)仅仅是一种编程语言的规范。任何人都可以编写一个 JavaScript 引擎,它能够读取并执行合法的 JavaScript 程序。
目前最流行的两个引擎是 V8(由谷歌开发)和 JavaScriptCore(由苹果开发),两者均为开源。
然而,大多数 JavaScript 程序并不是在真空中运行的。它们需要一种与外部世界交互的方式,以执行有用的任务。这就是运行时发挥作用的地方。运行时实现额外的 API,并将其提供给它们所执行的 JavaScript 程序使用。
命令示例
bun run start # run the `start` script
bun install <pkg> # install a package
bun build ./index.tsx # bundle a project for browsers
bun test # run tests
bunx cowsay 'Hello, world!' # execute a package