写点什么

Deno 2 发布,重点关注与传统 JavaScript 基础设施的互操作性和大规模使用

作者:Bruno Couriol

  • 2025-01-09
    北京
  • 本文字数:1051 字

    阅读完需:约 3 分钟

Deno 2发布,重点关注与传统JavaScript基础设施的互操作性和大规模使用

最近,Deno 团队发布了 Deno 2。据该团队介绍,Deno 2 可以无缝地与传统的 JavaScript 基础设施进行互操作,并提供了稳定的标准库,用于跨运行时共享 JavaScript 库的现代注册表等。


据称,Deno 2 向后兼容 Node 和 npm。发布说明中写道:


Deno 2 可以解析package.jsonnode_modules文件夹,甚至是 npm 工作区,这让你可以在任何使用 ESM 的 Node 项目中运行 Deno。如果有你需要的语法微调,可以使用deno lint --fix进行修复。


上述兼容性使团队能够逐步采用 Deno 及其一体化工具链。Deno 开发人员可以通过npm:指定符导入 npm 包:


import chalk from "npm:chalk@5.3.0";

console.log(chalk.blue("Hello, world!"));// Hello, world! (in blue)
复制代码


开发人员还可以利用 import 映射为其 npm 包设置裸指定符:


// deno.json{  "imports": {    "chalk": "npm:chalk@5.3.0"  }}
复制代码


然后就可以通过裸指定符使用这个模块了:


import chalk from "chalk";

console.log(chalk.blue("Hello, world!"));// Hello, world! (in blue)
复制代码


Deno 2 还声称支持各种常用的 Web 框架,如 Next.js、Astro、Remix、Angular、SvelteKit 和 QwikCity 等。


Deno 2 还通过deno installdeno adddeno remove支持依赖管理。后两个命令分别用于向package.json文件中添加以及从其中删除包。


Deno 标准库现已稳定,并且已经包含在了 Deno 2 中。它包括数十个已经经过审核的实用模块,涵盖数据操作、Web 相关逻辑、JavaScript 特有的功能等。开发人员可以在 Deno 的 JavaScript 注册表(JSR)中查看标准库的完整模块列表。该注册表是一个开源的 JavaScript 注册表,支持 ESM(JavaScript 本机模块),并且接受 TypeScript 包。


发布说明介绍了 JSR 的好处:


它原生支持 TypeScript(你可以将模块发布为 TypeScript 源代码),能够处理多个运行时和环境中模块加载的复杂问题,只允许使用 ESM,通过 JSDoc 样式的注释自动生成文档,并且可以与 npm 和 npx 类似的系统一起使用(是的,JSR 也可以将 TypeScript 转换为.js.d.ts文件)。


Deno 还支持工作空间(也称为 “monorepos”),可同时管理多个相关且相互依赖的包。Deno 工作空间支持从现有的 npm 包中使用 Deno-first 包,从而简化从 npm 工作空间的迁移。


开发人员可以从 dotcom-2.deno 安装生产版本。建议开发人员查看原发布说明,其中包括新增功能、改进和 Bug 修复的完整列表。Deno 是开源软件,采用 MIT 许可。开发人员可以通过 Deno 项目进行贡献,并应遵循 Deno 贡献指南。


原文链接:

https://www.infoq.com/news/2024/12/deno-2-released/

2025-01-09 16:009250

评论

发布
暂无评论

值得收藏:当向数据库导入大量数据时,mysql主键唯一键重复插入,如何丝滑操作并不导入重复数据呢

迷彩

MySQL 数据库 大数据运维 5月月更

JAVA什么是反射?

源字节1号

软件开发

架构实战营模块2课后作业

Geek_53787a

云图说丨每个成功的业务系统离不开API网关(APIG)的保驾护航

华为云开发者联盟

云计算 华为云 API网关 业务系统 APIG

GitOps自问自答

俞凡

最佳实践 研发效能 gitops

高性能 PHP 应用容器之 Workerman

CRMEB

三、KVM管理工具

穿过生命散发芬芳

kvm 5月月更

Sa-Token 单点登录 SSO模式二 URL重定向传播会话示例

Java 登录验证 SaToken

LabVIEW控制Arduino实现RGB调色灯(基础篇—6)

不脱发的程序猿

单片机 LabVIEW Arduino LIAT RGB调色灯

今天爬,明天没,天津市XX网 详情页加密逻辑拆解,文中关键字已经加密

梦想橡皮擦

5月月更

【LeetCode】检查句子中的数字是否递增Java题解

Albert

LeetCode 5月月更

解析数仓lazyagg查询重写优化规则

华为云开发者联盟

数据库

借势双碳东风:干“实事”的“虚拟”电厂

脑极体

OpenMLDB 实时引擎性能测试报告

第四范式开发者社区

人工智能 机器学习 数据库 性能分析 特征平台

对于编程思想和能力有重大提升的书有哪些?

宇宙之一粟

书单推荐 编程思想 5月月更

leetcode 153. Find Minimum in Rotated Sorted Array 寻找旋转排序数组中的最小值(中)

okokabcd

LeetCode 查找

JAVA SPI机制

源字节1号

什么是区块哈希?哈希趣投娱乐竞猜游戏开发逻辑(成熟源码)

开发微hkkf5566

Crypto巨头们纷纷聚焦“Building platonic”,PlatoFarm会是解决方案吗?

西柚子

使用 Provider 搞定 Flutter 的局部刷新

岛上码农

flutter ios 前端 安卓开发 5月月更

客观的聊一聊,裁员这件糟心事

互联网 职场 裁员

哈希能作弊吗?哈希竞猜游戏防作弊系统开发逻辑(稳定运营)

开发微hkkf5566

带你认识String类

开发微hkkf5566

模块2作业

Geek_701557

贪心算法:Dota2 参议院 🏯

空城机

LeetCode 5月月更

全链路压测(十四):生产全链路压测SOP

老张

性能测试 全链路压测 稳定性保障

带你读顶会论文丨基于溯源图的APT攻击检测

华为云开发者联盟

安全

LabVIEW控制Arduino实现模拟数据采集(基础篇—8)

不脱发的程序猿

单片机 LabVIEW Arduino LIAT 模拟数据采集

Java设计模式系列学习

梁歪歪 ♚

设计模式

微信朋友圈的复杂度

爱晒太阳的大白

LabVIEW控制Arduino实现示波器(基础篇—7)

不脱发的程序猿

单片机 LabVIEW Arduino LIAT Arduino实现示波器

Deno 2发布,重点关注与传统JavaScript基础设施的互操作性和大规模使用_编程语言_InfoQ精选文章