TypeScript基础
一、基础类型
1、boolean、number、string 2、undefined、null 3、any、unknown、void 4、never 5、数组类型 [] 6、元组类型 tuple
二、函数类型
1、定义:TS 定义函数类型时要定义输入参数类型和输出类型 2、输入参数:参数支持可选参数和默认参数 3、输出参数:输出可以自动推断,没有返回值时,默认为 void 类型 4、函数重载:名称相同但参数不同,可以通过重载支持多种类型
三、interface
1、定义:接口是为了定义对象类型 2、特点: 可选属性:? 只读属性:readonly 可以描述函数类型 可以描述自定义属性 总结:接口非常灵活 duck typingTypeScript基础 一、基础类型
1、boolean、number、string 2、undefined、null 3、any、unknown、void 4、never 5、数组类型 [] 6、元组类型 tuple
二、函数类型
1、定义:TS 定义函数类型时要定义输入参数类型和输出类型 2、输入参数:参数支持可选参数和默认参数 3、输出参数:输出可以自动推断,没有返回值时,默认为 void 类型 4、函数重载:名称相同但参数不同,可以通过重载支持多种类型
三、interface
1、定义:接口是为了定义对象类型 2、特点: 可选属性:? 只读属性:readonly 可以描述函数类型 可以描述自定义属性
总结:接口非常灵活 duck typing
四、class
1、定义:写法和 JS 差不多,增加了一些定义 2、特点: 增加了 public、private、protected 修饰符 抽象类只能被继承,不能被实例化,作为基类,抽象方法必须被子类实现 interface 约束类,使用 implements 关键字
五、高级类型
1、联合类型 | 2、交叉类型 & 3、类型断言 4、类型别名:给类型起个别名 5、type VS interface 相同点: 都可以定义对象或函数 都允许继承 差异点: interface 是 TS 用来定义对象,type 是用来定义别名方便使用 type 可以定义基本类型,interface 不行 interface 可以合并重复声明,type 不行
六、泛型
1、软件工程中,我们不仅要创建一致的定义良好的 API,同时也要考虑可重用性。组件不仅能够支持当前的数据类型,同时也能支持未来的数据类型这在创建大型系统时为你提供了十分灵活的功能。 2、在像 C# 和 Java 这样的语言中,可以使用泛型来建可重用的组件个组件可以支持多种类型的数据。这样用户就可以以自己的数据类型来使用组件。