TypeScript
JavaScript 是弱类型语言,TypeScript 的核心价值就是给 JavaScript 提供静态类型检查。
TypeScript
https://www.typescriptlang.org/
NPM 安装 TypeScript 编译器
https://www.npmjs.com/package/typescript
npm install typescript --save-dev
typescript 包提供 TypeScript 的编译器和语言服务
typescript 包提供 tsc
命令,用于将 .ts 或 .tsx 文件编译成 JavaScript
tsc 命令
tsconfig.json 配置文件
tsconfig.json 定义编译规则,如输出目录、目标 JS 版本等
@types/* JS 类型检查包
为纯 JavaScript 编写的库提供 TypeScript 类型定义,使得在使用 JS 库时获得 TS 的类型提示和检查
@types/*
包来源:
- DefinitelyTyped:约占 85%
- 包自带:约占 10%
- TS 内置类型:约占 5%
DefinitelyTyped
@types/*
包的约 85% 由 DefinitelyTyped 社区维护和发布
https://github.com/DefinitelyTyped/DefinitelyTyped
DefinitelyTyped 运行机制
- 当 JS 库(如 lodash)无自带类型时,社区为其编写类型声明文件(
.d.ts
) - 通过自动化工具发布到 npm,命名规范为
@types/[包名]
ts-node TypeScript 即时编译及交互环境
https://www.npmjs.com/package/ts-node
ts-node 是一个用于在 Node.js 环境中直接运行 TypeScript 代码的 npm 包,无需手动编译成 JavaScript。
TypeScript 即时编译(JIT)
ts-node 在内存中实时将 TypeScript 代码转换为 JavaScript(通过 TypeScript 编译器),省略了 tsc > node 的中间步骤。ts-node script.ts
即可直接执行 script.ts
TypeScript REPL(Read Eval Print Loop) 交互式环境
提供交互式 TypeScript REPL(类似 Node.js 的 node命令),直接输入 TypeScript 代码并查看结果
ts-node 本身不包含 TypeScript 编译器(tsc),它需要依赖 typescript 包来完成编译工作。
安装 ts-node 时不会自动安装 typescript,所以最佳实践是 ts-node 和 typescript 一起安装npm install ts-node typescript --save-dev
上一篇 JavaScript-基础
下一篇 NPM-Basic
页面信息
location:
protocol
: host
: hostname
: origin
: pathname
: href
: document:
referrer
: navigator:
platform
: userAgent
: