ts对比js
ts是js的超集,可以被编译成js代码,支持ES6语法,支持面向对象编程的概念,如类、接口、继承、泛型等 还提供了一些新类型 元组 枚举等 是一种静态类型检查的语言,提供了类型注解,在代码编译阶段就可以检查出数据类型的错误,可以尽早的发现错误
type和interface区别
type是类型别名,不仅可以表示基本类型,也可以表示对象类型,联合类型,交叉类型等
interface为接口,interface 仅限于描述对象类型
相同点:
都支持定义对象类型
都支持拓展,在interface后面添加关键字extends去扩展接口。类型别名type需要使用&符号去扩展接口(交叉类型)
不同点:
定义方式type有等号 interface没等号
type 不能重复定义,interface 可以重复会合并
type的使用场景 定义基本类型 元祖类型 联合类型 interface 定义对象数据结构
泛型
泛型实现类型参数化
作用于函数 接口 类
泛型约束 传入的类型有某些共性 extends