基础篇 TypeScriptday01( 五 )


4.6 接口的混合类型就是可以将接口里面多个类型混合在一起定义 , 包括属性、函数等
因为我们之前都是单独对对象或者函数进行接口约束 , 那么如果要进行一个混合类型接口,以函数为例,先绑定给一个函数

基础篇 TypeScriptday01

文章插图
函数里面先定义好我们的函数 , 并且提示需要返回值
基础篇 TypeScriptday01

文章插图
添加返回值后提示缺少定义好的两个属性
基础篇 TypeScriptday01

文章插图
直接将counter类型断言为Counter并将属性绑定上去
可以看到此时这个counter即为函数又为对象
又可以使用自己函数,又可以调用对象属性
基础篇 TypeScriptday01

文章插图

基础篇 TypeScriptday01

文章插图

基础篇 TypeScriptday01

文章插图

基础篇 TypeScriptday01

文章插图

基础篇 TypeScriptday01

文章插图

基础篇 TypeScriptday01

文章插图
4.7 接口和类型别名的异同点主要是两同两异
相同一:
都可以描述属性或者方法
这里分别用类型别名和接口定义了两个属性一个方法,都没有报错
基础篇 TypeScriptday01

文章插图
应用上去也没问题
基础篇 TypeScriptday01

文章插图
相同二:
都允许扩展
注意类型别名扩展是用&连接
基础篇 TypeScriptday01

文章插图
接口的扩展前面有说extends来连接
不同点一:
type可以声明基本数据类型、联合类型、数组等等 , 而接口只能声明对象 , 函数也是对象
基础篇 TypeScriptday01

文章插图
注意:这是或者的意思,比如在数组那里有且只有第一个值,有第二个值就会报错
不同点二:
type不能进行合并,接口可以
基础篇 TypeScriptday01

文章插图

基础篇 TypeScriptday01

文章插图

推荐阅读