JavaScript 是一门非常流行的编程语言,它广泛应用于网页开发、后端开发等领域。但是 JavaScript 也存在一些安全问题,例如在浏览器中执行恶意脚本、Node.js 权限管理不够精细等。近期,一款名为 Deno 的 JavaScript 运行时发布了 v1.0 版本,它有望让 JavaScript 更加安全和可靠。
什么是 Deno?
Deno 是一款基于 V8 引擎的 JavaScript 运行时,它由 Node.js 的创始人 Ryan Dahl 开发。与 Node.js 不同,Deno 的设计目标是更加安全和可靠,它执行 JavaScript 代码时进行了一系列的安全限制。
Deno 的安全设计包括以下几个方面:
- 默认禁止网络访问和文件访问权限,需要手动开启
- 所有的代码执行都在沙盒环境中进行,不能访问敏感的系统 API
- 将依赖的模块通过 URL 引入,不允许通过本地文件引入
在 Deno 中,每个模块都是一个 ES 模块,可以通过 import
语句引入。它可以执行 ES 模块和 CommonJS 模块,同时支持 TypeScript 编译和运行。
Deno 的新特性
Deno v1.0 发布了一些令人兴奋的新特性,包括:
Web 标准 API
Deno 实现了一些常见的 Web 标准 API,例如 fetch、WebSocket、URLSearchParams 等。这些 API 可以在 Deno 的运行时环境中直接使用,不需要通过 npm
安装额外的模块。
------ - ----- - ---- ----------------------------------------------- ----- ------ - ------- ----- ---- --- --- ----- ------ --- -- ------- - ------------- ----- ------ ------ --- -
支持 WebAssembly
Deno 支持加载 WebAssembly 模块,使用 WebAssembly.instantiate()
函数可以加载 WebAssembly 模块并进行调用。
----- ---- - ------------------------------------ ----- - -------- - - ----- ------------------------------ ----------------------------------- ---- -- -- -
第三方模块管理
Deno 自带了一个包管理器 deno.land/std
,可以方便地引入常用的第三方模块,例如 TypeScript、Lodash 等。
------ - ---- ------------------------------------ ----------------------- -- -- -- --- ---- -- -- ---- --- --- --- ----
怎样使用 Deno?
你可以在 Deno 的官网 https://deno.land 上下载安装包安装 Deno,也可以使用类似 brew install deno
这样的包管理器安装。
安装完毕后,你可以在终端中执行 deno
命令,启动一个 Deno 的 REPL 环境,并在其中编写和运行 JavaScript 代码:
- ------------------ -------- ----- -----
如果需要运行一个 JavaScript 文件,可以使用 deno run
命令:
- ---- --- ----------
Deno 在执行 JavaScript 代码时会自动下载该脚本的所有依赖模块,并在执行前进行类型检查。如果遇到安全限制,例如读取文件或发起网络请求等,Deno 会询问用户是否授权。
总结
Deno 的发布是 JavaScript 运行时领域的一场重大变革。它以更加安全和可靠的方式执行 JavaScript 代码,并提供了一些很有用的新特性。如果你正在进行前端或者后端开发,不妨试试 Deno,它有望让你的代码更加安全和可靠。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/65bae78cadd4f0e0ff3782c4