TypeScript 起步

111 阅读4分钟

TypeScript 介绍

知道:TS是带类型语法的JS

官方网站:www.typescriptlang.org/

1699862989082.png TypeScript 是一种由微软开发的开源编程语言,它是 JavaScript 的一个超集,它只存在于编译时态,并不参与运行。它扩展了 JavaScript,为其添加了静态类型检查、支持最新的 ECMAScript 特性、面向对象编程的功能,以及更强大的工具支持。TypeScript 的主要目标是使大型应用程序的开发更加容易,提高代码的可维护性和可读性。

TypeScript 的特点包括:

  1. 静态类型检查: TypeScript 引入了静态类型系统,使开发者可以在编码阶段就能够发现并修复潜在的类型错误,提高了代码的可靠性和稳定性。
  2. ECMAScript 支持: TypeScript 支持最新的 ECMAScript 标准,并且不断更新以跟进 JavaScript 的最新发展,包括 ES6、ES7 等新特性,让开发者能够更加方便地使用 JavaScript 最新的语言功能。
  3. 面向对象编程: TypeScript 支持面向对象编程的特性,包括类、接口、继承、多态等,使得代码结构更加清晰、模块化,便于团队协作和代码复用。
  4. 工具支持: TypeScript 提供了强大的工具支持,包括丰富的编辑器集成(如 Visual Studio Code)、自动代码补全、重构工具、代码格式化工具等,使开发者能够更高效地编写和维护代码。
  5. 增强的错误提示: TypeScript 提供了更加友好和详细的错误提示信息,帮助开发者快速定位和修复问题。
  6. 渐进式采用: TypeScript 是一种渐进式的语言,意味着可以在已有的 JavaScript 项目中逐步引入 TypeScript,而无需对整个项目进行重写。

JavaScript 代码

let age = 18

TypeScript 代码

let age: number = 18

注意:TS 需要编译才能在浏览器运行。

总的来说,TypeScript 是一种强大的编程语言,它融合了 JavaScript 的灵活性和动态特性,以及静态类型检查和面向对象编程的优点,为开发者提供了更好的开发体验和更高的代码质量。

TypeScript 作用

知道:TS作用是在编译时进行类型检查提示错误

发现:

  • 在程序运行的时候 Uncaught TypeError 这个错误挺常见的
  • 这些错误导致在开发项目的时候,需要花挺多的时间去定位和处理 BUG
num.toLowerCase() 
// Uncaught TypeError: num.toLowerCase is not a function

原因:

  • JS 是动态类型的编程语言,动态类型最大的特点就是它只能在 代码执行 期间做类型的相关检查,所以往往你发现问题的时候,已经晚了。

方案:

  • TS 是静态类型的编程语言,代码会先进行编译然后去执行,在 代码编译 期间做类型的相关检查,如果有问题编译是不通过的,也就暴露出了问题。
  • 配合 VSCode 等开发工具,TS 可以提前到在 编写代码 的时候就能发现问题,更准确更快的处理错误。

TS 优势:

  • 更早发现错误,提高开发效率
  • 随时随地提示,增强开发体验
  • 强大类型系统,代码可维护性更好,重构代码更容易
  • 类型推断机制,减少不必要类型注解,让编码更简单
  • 最后:Vue3源码TS重写,React和TS完美配合,Angular默认支持TS,大中型前端项目首选。

Vue3 + TS 最新的开发技术栈,你还在等什么?

TypeScript 编译

知道:如何使用 tsc 编译 ts 代码

全局安装:

npm i -g typescript
# yarn 安装
yarn global add typescript
# 部分mac电脑安装需要sudo权限
# sudo npm i -g typescript
# sudo yarn global add typescript

查看版本:

tsc -v

编译 TS:

  • 新建 hello.ts 文件
  • 当前目录打开命令行窗口,执行 tsc hello.ts 命令,同级目录生成 hello.js 文件
  • 执行 node hello.js 验证一下

思考:

  • 以后我们写 ts 都是手动的编译执行吗?

    • 在开发中:一般使用 webpack vite 等工具自动构建编译。