[TOC]
# 官网
https://deno.land/
Deno 是 Web浏览器之外的一个新的 JavaScript和 TypeScript 运行时。它基于 V8 JavaScript 引擎,用 Rust 编写,由 Node.js 的创始人Ryan Dahl 创建。
# 安装
使用 Homebrew (macOS):
~~~shell
brew install deno
~~~
使用 Scoop (Windows):
~~~shell
scoop install deno
~~~
参见[`deno_install`](https://github.com/denoland/deno_install)了解更多安装方式。
# Deno VS Node
| 描述 | Node | Deno |
| :-- | :-- | :-- |
| API 引入方式 | 模块引入 | 全局对象 |
| 模块系统 | CommonJS & 新版 node 实验性 ES Module | ES Module 浏览器实现 |
| 安全 | 无安全限制 | 默认安全 |
| Typescript | 第三方,如通过 ts-node 支持 | 原生支持 |
| 包管理 | npm + `node_modules` | 原生支持 |
| 异步操作 | 回调 | Promise |
| 包分发 | 中心化 npmjs.com | 去中心化 import url |
| 入口 | package.json配置 | import url 直接引入 |
| 打包、测试、格式 | 第三方eslint、gulp、webpack、babel | 原生支持 |
# 模块规范
deno 完全遵循了 ES Module 浏览器实现:
```javascript
// 支持
import * as fs from "https://deno.land/std/fs/mod.ts";
import { deepCopy } from "./deepCopy.js";
import foo from "./foo.ts";
// 不支持
import foo from "foo.ts";
import bar from "./bar"; // 必须制定扩展名
```
# 参考
[Deno 和 Node 的区别](https://blog.csdn.net/kkm486622296/article/details/106178412)