ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
[TOC] ## 价绍 - 是因为 Bun 和传统的 Node.js 这种传统的 javaScript 运行时 不同; Bun 提供了 打包、转译、安装和运行 JavaScript & TypeScript 项目的功能,内置原生打包器 (native bundler)、转译器、task runner、npm 客户端,以及数百个 Node.js API 和 Web API,包括约 90% 的[Node-API](https://nodejs.org/api/n-api.html)函数(本机模块)、fs、path、Buffer 等。 - 不同于 Node.js 和 Deno,Bun 并没有基于 V8 引擎,而是使用了 [JavaScriptCore](https://github.com/WebKit/WebKit/tree/main/Source/JavaScriptCore) 引擎,它的执行速度往往要比 V8 等更传统引擎要快 - 这就意味着你可以实现在 Bun 上运行的大部分 Node API 和 Web API, 还可以在不需要使用 Webpack、Rollup、esbuild、babel 等工具的前提下直接运行 TypeScript 、JSX 了 - Bun.js使用的是新兴的系统编程语言[ZIG](https://ziglang.org/)编写的,主要通过手动内存管理对内存进行更细粒度的控制、无隐藏的控制流来提升程序的性能; ## 性能对比图 ![](https://img.kancloud.cn/05/85/05859853c6680cc6280f8f2f3e636b67_689x841.png) ![](https://img.kancloud.cn/15/41/15418702919dfe9cf1ef74f1107a666d_689x839.png) ![](https://img.kancloud.cn/27/74/27744139ec5ed27f83fd1fdf8f43ac91_689x852.png) ## 内置兼容性 **Web API 支持**:对 fetch、WebSocket、 ReadableStream 等 API 都提供了内置支持; **Node.js模块**:Bun 实现了 Node.js 的模块解析算法,,以便我们可以在 Bun 中使用 npm 包,同时支持 ESM 和 CommonJS,但 Bun 内部使用 ESM; * Bun.js 实现了大部分 Node-API (N-API),大部分 Node.js 原生模块及全局变量(比如Buffer 和 process)都可以正常工作; * 自动加载环境变量 .env 文件,不需要再 require("dotenv").load(); * 附带一个内置的快速 SQLite3 户端 bun:sqlite;