JavaScript 的超集

  • 静态语言
  • 可以使用尚在提案的语法特性

静态类型

在编译阶段报错就是「静态语言」,在运行阶段报错就是「动态语言」。

TypeScript 是「静态弱类型语言」, 因为要兼容 JavaScript,所以 TypeScript 对 JavaScript 中隐式类型转换几乎不做限制。对于如 Java、c# 这种静态强类型语言是不允许类型转换的。

严谨不失灵活

TypeScript 由于兼容 JavaScript 所以其灵活度可以媲美 JavaScript,比如你可以把任何想灵活的地方将类型定义为 any 即可,把 TypeScript 变为 AnyScript 就能保持它的灵活度,毕竟TypeScript 对类型的检查严格程度是可以通过 tsconfig.json 来配置的。

TypeScript 优点

  1. 规避大量低级错误,避免时间浪费,省时
  2. 减少多人协作项目的成本,大型项目友好,省力
  3. 良好代码提示,不用反复文件跳转或者翻文档,省心

    TypeScript 缺点

  4. 学习成本

  5. 实际结合框架带来的坑