Deno 基于 V8 的 TypeScript 运行时开源项目

我要开发同款
匿名用户2018年05月31日
62阅读
开发技术Rust
所属分类浏览器/JS引擎、Web应用开发
授权协议MIT

作品详情

Deno是V8上的安全TypeScript运行时。

支持TypeScript2.8开箱即用,使用V86.8.275.3引擎

无package.json、npm,不追求兼容Node

通过URL方式引入依赖而非通过本地模块,并在第一次运行的时候进行加载和缓存,并仅在代码使用--reload运行,依赖才会更新,引入方式如:

import { test } from "https://unpkg.com/deno_testing@0.0.5/testing.ts"import { log } from "./util.ts"

可以控制文件系统和网络访问权限以运行沙盒代码,默认访问只读文件系统可访问,无网络权限。V8和Golang之间的访问只能通过protobuf中定义的序列化消息完成;

最终创建单一可执行文件

 > ls -lh deno -rwxrwxr-x 1 ryan ryan 55M May 28 23:46 deno > ldd deno linux-vdso.so.1 =>  (0x00007ffc6797a000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f104fa47000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f104f6c5000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f104f3bc000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f104f1a6000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f104eddc000) /lib64/ld-linux-x86-64.so.2 (0x00007f104fc64000)

 

发生未捕捉错误时自动终止运行

支持top-level的await

旨在兼容浏览器

可以作为库来引入,以轻松构建自己的JavaScriptruntimehttps://github.com/ry/deno/blob/master/cmd/main.go

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论