TypeScript - 一种思维方式(入门必看,内附typescript 包安装步骤)

142 阅读3分钟

TypeScript 是什么?

image.png

TypeScript 简称:TS,是 JavaScript 的超集

  1. 简单来说就是:JS 有的 TS 都有。JS写的代码在TS的环境下都能跑。
  2. 在 JS 基础之上,为 JS 添加了类型支持。TypeScript = Type + JavaScript

TypeScript - 一种思维方式

对于前端工程师来说,使用 typescript 开发无疑就是在尝试换一种思维方式做事情

TS怎么影响我们写代码的思维方式?

TS 能强化了「面向接口编程」这一理念。我们知道稍微复杂一点的程序都离不开不同模块间的配合,不同模块的功能理应是更为清晰的,TS 能帮我们梳理清不同的接口。

是一种明确的模块抽象过程

举例来说,比如说我们用 TS 定义一个函数,TS 会要求我们对函数的参数及返回值有一个明确的定义,简单的定义一些类型,却能帮助我们定位函数的作用,比如说我们设置其返回值类型为 void ,就明确的表明了我们想利用这个函数的副作用;

说到这里不得不提一下前端生态

前端三大框架: Vue 3 源码使用 TS 重写、Angular 默认支持 TS、React 与 TS 完美配合,TypeScript 已成为大中型前端 项目的首选编程语言,

  1. js是动态语言(边解析->边执行),ts是静态语言(先编译-->执行)
  2. ts是包含js的,js的所有语法在ts中支持
  3. ts有类型提示
  4. ts是前端不可避免的趋势。

目前,前端最新的开发技术栈:

  1. React: TS + Hooks
  2. Vue: TS + Vue3 ts有类型支持,有强大的代码类型提示,可以让我们在写代码的过程中就能发现问题

下面我们来搭建一个可以运行TS的环境

第一步全局安装编译 TS 的工具包

安装包:npm i -g typescript

  • typescript 包:用来编译 TS 代码的包,提供了 tsc 命令,实现了 ts -> js 的转化
  • 验证是否安装成功:tsc –v (查看 typescript 的版本)

注意:Mac 电脑安装全局包时,需要添加 sudo 获取权限:sudo npm i -g typescript

编译并运行 TS 代码

  1. 创建ts文件。例如 hello.ts 文件(注意:TS 文件的后缀名为 .ts

  2. 编译。将 TS 编译为 JS

    在终端中输入命令,tsc hello.ts(此时,在同级目录中会出现一个同名的 JS 文件)

  3. 执行 JS 代码。

    1. 在node中运行。在终端中输入命令,node hello.js
    2. 在浏览器中运行。

最后呢,带大家了解一下TS中的数据类型

TS 中的常用基础类型分为两类

  1. JS 已有类型

    1. 原始类型:number/string/boolean/null/undefined/symbol
    2. 对象类型:object(包括,数组、对象、函数等对象)
  2. TS 新增类型

    1. 联合类型
    2. 自定义类型(类型别名)
    3. 接口
    4. 元组
    5. 字面量类型
    6. 枚举
    7. void
    8. any
    9. unkown
    10. 等......

注意:

  1. 原始类型在 TS 和 JS 中写法一致
  2. 对象类型在 TS 中更加细化,每个具体的对象(比如: 数组、对象、函数...)都有自己的类型语法

logo.png去年在搞一个项目的时候就用了ts,当时是平台库,定义了一堆声明文件d.ts,上层业务写js代码用这个库的时候可以联想那叫一个爽…
不过后来随着基础库越来越大,类型越来越复杂,定义也比较麻烦,前端人员维护类型的意识比较薄弱,习惯性弱类型,我后来离开那个项目后听同事说搞了一堆any…当时我就崩溃了T T所以有兴趣的小伙伴们一定要好好学呀!PS:拜托~超级好用的好吧!!!