开源 JavaScript 和 TypeScript 运行时 Deno 于近日发布了 2.0 版本。作为一个现代化的 JavaScript/TypeScript 工具链,Deno 在上个版本就已经具备了原生 TypeScript 支持、内置的格式化和测试等功能。此次 2.0 版本的亮点在于,Deno 现在可以与 Node.js 生态实现完全的向后兼容。
Deno 创建于 2018 年,由 Node.js 之父 Ryan Dahl 发起,旨在为 JavaScript 和 TypeScript 提供一个安全、现代化的运行时环境。经过 2 年的发展,Deno 1.0 版本于 2020 年正式发布。尽管 Deno 一直在稳步发展,但与 Node.js 的不兼容性在一定程度上限制了它的应用范围。
Deno 2.0 的核心变化是全面支持了 Node.js 和 npm 生态。这意味着现有的 Node.js 应用程序可以平滑地迁移到 Deno 上运行。开发者不仅可以在当前的 Node.js 项目中使用 Deno,还能渐进式地引入 Deno 的各种工具,如使用 deno fmt 格式化代码等。
deno fmt
此外,Deno 2.0 还原生支持 package.json 和 node_modules,并提供了新的包管理命令如 deno install / add / remove 等。这使得使用 npm 包的体验和在 Node.js 中几乎一致。Deno 团队表示,这种兼容性的实现性能优异,在依赖安装速度上比 npm 还要快。
package.json
node_modules
deno install / add / remove
值得一提的是,Deno 的标准库也已经稳定,提供了数十个经过严格审核的实用模块。不少模块可以取代 npm 上常用的同类库,如测试框架、CLI 解析、基础工具集等。Deno 2.0 对私有 npm 源、monorepo 工作区等场景也提供了完善的支持。
尽管做了大量的兼容性工作,但 Deno 并不会改变“去繁就简”的设计理念。用户仍然可以不依赖任何配置文件来运行 Deno 代码。新增的包管理命令也不是必需的,主要是为了方便管理更为复杂的项目。Deno 团队强调,他们的目标不是成为 Node.js 的替代品,而是为 JavaScript 提供一个更现代、高效的全功能工具链,让 Web 开发变得更简单。
评论删除后,数据将无法恢复
开源 JavaScript 运行时 Deno 发布 2.0 版本,向 Node.js 兼容
开源 JavaScript 和 TypeScript 运行时 Deno 于近日发布了 2.0 版本。作为一个现代化的 JavaScript/TypeScript 工具链,Deno 在上个版本就已经具备了原生 TypeScript 支持、内置的格式化和测试等功能。此次 2.0 版本的亮点在于,Deno 现在可以与 Node.js 生态实现完全的向后兼容。
Deno 创建于 2018 年,由 Node.js 之父 Ryan Dahl 发起,旨在为 JavaScript 和 TypeScript 提供一个安全、现代化的运行时环境。经过 2 年的发展,Deno 1.0 版本于 2020 年正式发布。尽管 Deno 一直在稳步发展,但与 Node.js 的不兼容性在一定程度上限制了它的应用范围。
Deno 2.0 的核心变化是全面支持了 Node.js 和 npm 生态。这意味着现有的 Node.js 应用程序可以平滑地迁移到 Deno 上运行。开发者不仅可以在当前的 Node.js 项目中使用 Deno,还能渐进式地引入 Deno 的各种工具,如使用
deno fmt
格式化代码等。此外,Deno 2.0 还原生支持
package.json
和node_modules
,并提供了新的包管理命令如deno install / add / remove
等。这使得使用 npm 包的体验和在 Node.js 中几乎一致。Deno 团队表示,这种兼容性的实现性能优异,在依赖安装速度上比 npm 还要快。值得一提的是,Deno 的标准库也已经稳定,提供了数十个经过严格审核的实用模块。不少模块可以取代 npm 上常用的同类库,如测试框架、CLI 解析、基础工具集等。Deno 2.0 对私有 npm 源、monorepo 工作区等场景也提供了完善的支持。
尽管做了大量的兼容性工作,但 Deno 并不会改变“去繁就简”的设计理念。用户仍然可以不依赖任何配置文件来运行 Deno 代码。新增的包管理命令也不是必需的,主要是为了方便管理更为复杂的项目。Deno 团队强调,他们的目标不是成为 Node.js 的替代品,而是为 JavaScript 提供一个更现代、高效的全功能工具链,让 Web 开发变得更简单。