文章插图
3.3 元祖用于保存定长长度的数组和数据类型
tuple
首先它的定义
文章插图
文章插图
这个时候就定长了,长度固定少一个不行 , 多一个不行
文章插图
而且对应位置的数据类型也固定了,不能颠倒
文章插图
3.4 any与void首先any表示任意类型 , 当我们不清楚值的数据类型时可以用any
场景一:
当变量的值会动态改变 , 比如用户的输入时
可以看到我们这里不论是什么类型都不会报错
文章插图
场景二:
改写现有代码时,想要去包含或者是移除类型检查
【基础篇 TypeScriptday01】可以看到我们并没有定义这个函数,但是也不会报错,这个时候用any来移除类型检查,但是要注意这种方式不太安全
文章插图
场景三:
定义或存储各种类型数据的数组
像这样一个数组会有限制
文章插图
这样就不会了
文章插图
void
某种意义上来说,void与any是相反的,因为他表示没有任何类型
常常用于当一个函数没有返回值时
比如这样一个正常函数是没有问题的
文章插图
当我加上了void来声明后
就会报错return这一行
文章插图
删除后我们才可以正常执行
文章插图
还有一个点就是当给一个变量声明为void类型,那么他的值就只能为undefined和null
文章插图
文章插图
为null报错是以为我们开启了严格模式,需要在ts配置文件中将这一行注释
文章插图
文章插图
3.5 null和undefined他们的作用就不用多说了
首先他们也是一种数据类型要赋值给变量也要进行定义
文章插图
但是要注意:在非严格模式下,他可以赋值给其他数据类型
文章插图
3.6 never和objectnever类型就是一些总是会抛出异常或者根本就不会有返回值的函数,像这些就可以定义为never类型
文章插图
object就是定义为一个对象
文章插图
3.7 枚举枚举是js标准数据类型的一个补充,可以为一组 数值赋予友好的名字
通过enum来定义
文章插图
这个时候我将一个变量定义为这个类型,
文章插图
他就只能为这个类型里面的别名或者说是数值
文章插图
然后第一个注意点,我给他赋值数值并不会出错,因为枚举本身就是为数值取一个好听的别名,它的本质就是数值
推荐阅读
- 2 java安全之CC1浅学
- fltp备份文件后统计验证
- 哈利波特:魔法觉醒魔咒试炼基础教学怎么玩
- 【深入浅出 Yarn 架构与实现】2-2 Yarn 基础库 - 底层通信库 RPC
- 1.python基础使用
- KeeWiDB的高性能修炼之路:架构篇
- var,let和const的不同 第一百零六篇:变量的不同声明
- 【深入浅出 Yarn 架构与实现】2-1 Yarn 基础库概述
- Redisson源码解读-公平锁
- 重新整理 .net core 实践篇 ———— dotnet-dump [外篇]