深入浅出 TypeScript学习|青训营笔记

71 阅读2分钟

今天天气非常晴朗,开启一天打卡学习~

TypeScript 不是一门全新的语言,TypeScript 是 JavaScript 的超集,它对 JavaScript 进行了一些规范和补充。

关于shell的一些基础概念理解

TypeScript 是微软开发的自由和开源的编程语言。是 JavaScript 的一个超集,兼容 JavaScript,可以载入 JS 代码然后运行。它与 JavaScript 相比进步的地方包括:加入注释,让编译器理解所支持的对象和函数,编译器会移除注释,不会增加开销。 而 JavaScript 只是一个脚本语言,并非设计用于开发大型 Web 应用,在 ES2015 之前,JavaScript 没有提供类和模块的概念,而 TypeScript 扩展实现了这些特性。

不要将 TypeScript 看作是一门新的语言,它只是为了提升 JavaScript 代码质量的一个工具,最终 TypeScript 仍然要编译成 JavaScript。

TypeScript 最大的特点就是类型化,因此才叫做 TypeScript。比起弱类型的 JavaScript,类型化的 TypeScript 显得更加容易维护。

TypeScript 的特性:

  • TypeScript 是 JavaScript 的超集,它可以编译成纯 JavaScript。
  • TypeScript 基于 ECMAScript 标准进行拓展,支持 ECMAScript 未来提案中的特性,如装饰器、异步功能等。
  • TypeScript 编译的 JavaScript 可以在任何浏览器运行,TypeScript 编译工具可以运行在任何操作系统上。
  • TypeScript 起源于开发较大规模 JavaScript 应用程序的需求。由微软在2012年发布了首个公开版本。

为什么要使用 TypeScript

静态类型

JavaScript 只会在运行时去做数据类型检查,而 TypeScript 作为静态类型语言,其数据类型是在编译期间确定的,编写代码的时候要明确变量的数据类型。使用 TypeScript 后,就不会出现因为数据类型错误导致的代码运行异常。

三大框架支持

TypeScript 之所以能够流行起来并且保持长久的生命力,离不开前端三大框架的支持。

  • Angular 是 TypeScript 最早的支持者,Angular 官方推荐使用 TypeScript 来创建应用。
  • React 虽然经常与 Flow 一起使用,但是对 TypeScript 的支持也很友好。
  • Vue3.0 正式版即将发布,由 TypeScript 编写。

TypeScript 虽然严谨,但没有丧失 JavaScript 的灵活性,TypeScript 非常包容:

  • TypeScript 通过 tsconfig.json 来配置对类型的检查严格程度。
  • 可以把 .js 文件直接重命名为 .ts
  • 可以通过将类型定义为 any 来实现兼容任意类型。
  • 即使 TypeScript 编译错误,也可以生成 JavaScript 文件。