typescript 基础
typescript的优势
- 编译时静态类型检测
- 自动提示更加清晰明确
- 引入了泛型和一系列的TS特有类型
- 强大的d.ts声明文件
- 轻松编译成js文件
- 灵活性高
枚举的类型
- 字符串枚举
- 数字枚举双向枚举
any和unknown的区别
相同点:都可以是任意类型的父类
不同点:any可以任意类型的子类,unknown不行,any可以操作任意的属性和方法unkown不行
type和interface的区别
定义类型
interface 只能定义对象类型或者接口打算给你名称的函数类型
type 可以定义任意类型,包括基础类型、联合类型、交叉类型、元祖
继承性
interface可以继承一个或者多个接口或者类实现一个或者多个接口,也可以继承type
type类型没有继承
交叉类型
用type交叉类型& 可以让类型中的成员合并为一个新的type,
interfae不支持交叉合并