1. 静态类型系统
- TypeScript 引入了静态类型检查,开发者可以为变量、函数参数和返回值显式声明类型
- 类型错误在编译阶段即可被发现,而非等到运行时才暴露
- 支持基础类型(string、number、boolean)、复合类型(数组、元组、对象)以及高级类型(联合类型、交叉类型、映射类型等)
2. 编译时类型擦除
- TypeScript 的所有类型注解在编译后会被完全移除,生成的 JavaScript 代码与手写代码性能完全一致
- 类型系统仅存在于开发阶段,运行时零开销
3. 渐进式类型采用
- 可以逐步为现有 JavaScript 项目添加类型,无需一次性重写全部代码
- 支持通过 JSDoc 注释或 // @ts-check 指令在 JavaScript 文件中启用类型检查
- 允许在同一个项目中混合使用 .js 和 .ts 文件
4. 强大的编辑器集成
- 提供智能代码补全、即时错误提示、安全重构等高级 IDE 功能
- 类型信息作为"活文档",帮助开发者快速理解代码结构和接口契约
5. 面向对象特性
- 支持类(class)、接口(interface)、抽象类、访问修饰符(public、private、protected)
- 支持装饰器(Decorator),可用于元数据注解和代码增强