本人看到这个视频,个人认为讲得非常简洁,干货很多。比起几个小时,几十个小时的视频而言显得不拖沓,尤其适合具备一定的js基础或者是其他语言基础的同学学习。后面专栏将继续更新学习内容,坚持知识分享,共同进步!
学习来源:
20分钟学会TypeScript 无废话速成TS 学不会你来评论区_哔哩哔哩_bilibili
-
ts类型推断
ts类型推断
-
ts是强类型的语言,而js是弱类型的语言,
let str = 'abc'
str = 10 //写法错误因为限定是字符串类型,后期改为10是不行的
ts类型注解
-
尽管上面第一行的代码是可以在ts项目中写的,但是推断型语句不如类型声明式语句直观,因此写作以下可以更加方便项目中的类型判断和声明
let str:string
ts类型断言:用于人工声明变量中的类型
let number = [1,2,3]
const result = numArr.find(item => item>2) as number// 必须在确认都是number类型时才能用不然会出现错误
result *5 //如果不加上as number会报错,因为程序无法判断数组中的类型都满足条件
ts的联合类型:ts可以用于判断多个类型的可能值
第七,八行可以看到当ts分配了字符串或者是null这种类型,或者是特定的值
ts的数组,元组,枚举使用
-
数组限定
ts作为强类型语言,声明数组时需对数组的类型进行限定
分别限定为数字和字符串,如果里面有其他类型值会报错
-
元组使用
元组就是限定个数的数组
let t1:[number,string,number] = [1,'a',3] //限定了各个数组中的类型值
let t1:[number,string,number?] = [1,'a'] //后面加上一个?代表可选后面赋予的值可以写或不写。
-
枚举类型
用enum声明,在{}中包含值,下面的两个输出分别代表是取出枚举中的A值和枚举中的第一个(也是A)
注意:ts执行时候需先编译为js然后,因为系统不认识ts
-
函数声明
函数中也可以限定类型,可以通过:类型的方式,也可以通过 = 值 的方式类判断,同时还可以限定是具体数组的格式,通过...rest: number[], 来指定
同时function 变量名(值)后面的 :number 则是指定函数的返回值是数字类型
-
接口(对象的定义方式)
使用interface 定义obj 里面写具体的数值类型,之后使用对象的时候可以进行判断防止出现类型不匹配或者是值写错了,比如age写成ago
-
类型别名(type)
语法:type+变量名 = 类型 | 类型(可写多个或单个用 | 来分割),之后直接使用变量
-
泛型使用
泛型用于处理一次定义,之后多次使用
使用方法就是在变量名后加<T> 之后的值类型都是T ,在使用的时候可以对应的匹配不同的类型,因为ts具有类型推断的能力因此变量如果写成‘a’,会根据值判断出是字符串类型这样之后写不同的类型就会报错。