文章插图
第三种:对象
定义好之后绑定给变量,我们的当前这个属性就只能用规定好的数据类型了
文章插图
四.接口4.1 接口基本使用接口是一系列抽象方法的声明,是一些方法特征的集合
interface来定义 , 跟type很像,但是有区别的 , 后面会说
定义一个接口
文章插图
然后我这边要用同样是绑定给他,声明自己的数据
文章插图
函数的使用
参数采用解构赋值直接拿,然后通过定义好的接口去约束他们,再把函数定义为void类型,也就是没有返回值
文章插图
4.2 可选属性与只读属性在我们定义接口时,某些属性可以省略我们约束的时候可以不赋值叫做可选属性,用?修饰
没有修饰可选属性,不写的话会报错
文章插图
写为可选
文章插图
只读属性就是只能读取,不能修改 , readonly来修饰
没有只读属性时是可以修改的
文章插图
给到只读属性后
文章插图
我们的const和readonly的区别
因为他们两个都是不可以修改只能够读取
虽然作用大致一样 , 但是用处不一样,一般一般要作为变量使用就是用const来修饰,如果要作为属性使用就用readonly
4.3 索引签名用于描述那些通过索引得到的类型,解决参数问题
当我们定义好接口 , 如果少一个参数我们可以用可选属性来将其可要可不要
但是如果多一个参数呢?
三种方法第一种:不推荐
可以看到我如果直接加在后面会报错
文章插图
但是我给一个对象之后再加在后面就不会报错了
文章插图
这是因为ts的检测是浅检测,我们直接加在后面是一层 , 但是中间有个对象对象里面再来一个对象,就属于深层次了,就检测不到了,所以这种理论上是不允许的 , 只是我们投机取巧 , 不推荐
第二种:
通过类型断言
我们说过类型断言,就是我自己来声明,加上了之后就相当于脱离了ts的校验规则,你想定义什么就定义什么没有人管得到你了 , 注意这里是给这个变量类型断言 , 所以只能断言为people或者any
文章插图
第三种:
索引签名
给我们接口添加一个中括号里面props是变量名随便?。谝桓鰏tring为我们属性名的类型定义 , 要注意对象属性名会自动给你变成字符串,就算你没添加引号也是字符串,后面则是规定我们值为什么类型
文章插图
这样我们也可以随便添加任意类型的参数了
4.4 函数接口函数的接口需要定义一个调用的参数的签名以及返回值的类型
文章插图
接口与数组
注意一下我们的接口和数组怎么来使用,长得很像索引签名,但其实不是,前面定义的其实是我们数组的下标 , 所以只能为number类型,后面是数组里面每一项的值类型
文章插图
4.5 接口继承接口可以继承接口用到另一个接口上的属性约束 extends
单继承:
文章插图
多继承:
用逗号隔开
文章插图
推荐阅读
- 2 java安全之CC1浅学
- fltp备份文件后统计验证
- 哈利波特:魔法觉醒魔咒试炼基础教学怎么玩
- 【深入浅出 Yarn 架构与实现】2-2 Yarn 基础库 - 底层通信库 RPC
- 1.python基础使用
- KeeWiDB的高性能修炼之路:架构篇
- var,let和const的不同 第一百零六篇:变量的不同声明
- 【深入浅出 Yarn 架构与实现】2-1 Yarn 基础库概述
- Redisson源码解读-公平锁
- 重新整理 .net core 实践篇 ———— dotnet-dump [外篇]