深入浅出typescript
- 为什么要学习TypeScript?
TS的应用越发广泛
- TS与JS的区别:TS是JS的超集,TS可以编译成JS运行,TS在编译时就可以发现问题。
TS作为一门语言,和JAVA、C++一样。
- TS基础类型:1、boolean、number、string
2、枚举enum
3、any、unknown(any的替代类型,只允许被赋值)、void
4、never(那些永远不存在值的类型,主要用于防御性编程)
5、数组类型 [ ]
6、元组类型 tuple
- TS的函数类型:定义函数类型时要定义输入和输出类型
TS interface 定义:接口是为了定义对象类型
TS类:定义:写法和JS差不多,增加了一些定义
特点:增加了public、private、protected
Protected仅支持在继承类里面调用,生成的实例不可以调用
抽象类:只能被集成,不能被实例化
#表示私有属性
Ts进阶:
- 联合类型: |(and 取值)
交叉类型: &
- 类型断言:
两个用法:标识符和as
类型别名
- 高级类型:泛型的使用
不仅仅要支持现在所有的类型,还要支持未来的数据类型
场景应用
要定义一个函数,这个函数的作用是要把传入的参数打印出来,如何实现传入任何类型参数的打印?下面是使用泛型的代码:
function print<T> (arg:T):T{ console.log(arg) return arg }
> > 解决了输入输出可关联的问题
泛型的基本语法是:<>里面写参数,参数一般用T表示;使用的时候有两种方法制定类型:①定义要使用的类型②通过TS类型推断,自动推导类型 泛型的作用是临时占位,之后通过传来的类型进行推导
这期就是基本的关于typescript的笔记啦,后面有可能的话再写写typescript的具体coding~