JetBrains 开发的 Kotlin 编程语言,包含编译器、标准库及构建工具,支持多平台开发。
AssemblyScript/assemblyscript
一种类 TypeScript 的语言及编译器,可将带类型的 TypeScript 变体编译为 WebAssembly 模块。
- Star
- 18,031
- Fork
- 695
- 未关闭 Issue
- 213
- 最近提交
- 4天前
这是什么?
AssemblyScript 将 TypeScript 的一个变体(本质上是带静态类型的 JavaScript)编译为 WebAssembly,后端使用 Binaryen,通过 npm 即可安装。开发者无需学习新的底层语言,就能用熟悉的 TypeScript 语法编写 WebAssembly 代码。
编译器的目标是生成体积小、结构精简的 WebAssembly 模块。由于它是 TypeScript 的带类型子集而非完整 JavaScript,代码会被提前编译为原生 WebAssembly,而不是交给 JavaScript 引擎运行。仓库包含编译器、运行时与标准库以及测试套件。
该项目适合希望在浏览器、Node.js 或其他 WebAssembly 宿主中编写性能敏感代码,同时保持 TypeScript 式开发体验的开发者。
核心功能
- 01将带类型的类 TypeScript 语言编译为 WebAssembly。
- 02使用 Binaryen 进行优化与代码生成。
- 03可通过 npm 安装,无需额外工具链。
- 04生成体积较小的 WebAssembly 模块。
- 05仓库内包含运行时与标准库。
适用场景
- 为 Web 应用编写性能关键的计算模块。
- 为 Node.js 或其他 WebAssembly 宿主构建模块。
- 将 TypeScript 风格的代码移植为编译后的 WebAssembly 运行。
快速上手
- 1
克隆仓库
git clone https://github.com/AssemblyScript/assemblyscript.git - 2
进入项目目录
cd assemblyscript - 3
使用 npm 安装依赖
npm install
使用前须知
- 它只编译带类型的 TypeScript 子集,因此并非所有 TypeScript 代码都能使用。
标签
常见问题
- assemblyscript 是什么?
- 一种类 TypeScript 的语言及编译器,可将带类型的 TypeScript 变体编译为 WebAssembly 模块。 AssemblyScript 将 TypeScript 的一个变体(本质上是带静态类型的 JavaScript)编译为 WebAssembly,后端使用 Binaryen,通过 npm 即可安装。开发者无需学习新的底层语言,就能用熟悉的 TypeScript 语法编写 WebAssembly 代码。
- assemblyscript 可以免费使用吗?用的什么许可证?
- assemblyscript 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- assemblyscript 还在维护吗?
- 活跃维护中。assemblyscript 最近一次提交是在 2026年10月18日。
- assemblyscript 适合用来做什么?
- 为 Web 应用编写性能关键的计算模块。 为 Node.js 或其他 WebAssembly 宿主构建模块。 将 TypeScript 风格的代码移植为编译后的 WebAssembly 运行。
- assemblyscript 怎么安装和运行?
- 克隆仓库: git clone https://github.com/AssemblyScript/assemblyscript.git 进入项目目录: cd assemblyscript 使用 npm 安装依赖: npm install
- 在哪里获取 assemblyscript?
- 源代码和安装说明在 GitHub 上:https://github.com/AssemblyScript/assemblyscript
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
将 C 和 C++ 代码编译为 WebAssembly,使其可在浏览器、Node.js 等环境运行的编译工具链。
面向 WebAssembly 的 C++ 编译与优化基础库,附带 wasm-opt 等命令行工具和 binaryen.js。
一个实验性的编译器,可将 TypeScript/JavaScript 编译为原生可执行文件或 WebAssembly,运行时无需 Node.js。
用 Rust 重写的 TypeScript 7 编译器与语言服务,可直接替换现有类型检查流程。
基于 Cranelift 代码生成器的独立 WebAssembly 运行时,支持 WASI 并提供多语言嵌入接口。