typeScript进阶(11)_元组类型

本文介绍了TypeScript中的元组类型,元组允许你定义数组中各元素的具体类型。与数组不同,元组有固定的元素类型和数量。例如,`let tupleArr: [string, number];` 定义了一个包含字符串和数字的元组。当尝试给元组赋值或修改其元素时,必须遵守元组的类型约束,否则会导致错误。虽然元组是数组的一种形式,但其类型约束更为严格。
摘要由CSDN通过智能技术生成

元组类型

元组类型类似于数组类型,只是规则略有不同。
数组合并了相同类型的对象,而元组(Tuple)合并了不同类型的对象。

数组类型

首先回顾一下数组类型:

typeScript基础(6)_数组类型

其中只要包括数组类型的两种写法。

元组类型

元组类型具体规定了数组中每一项的类型。

for example one :

let tupleArr :[string,number] ;
// tupleArr =[1,2] ;//错误
//tupleArr =['1'] ;//错误
//tupleArr = ['1', 2,3]//错误
tupleArr =['1',2]

声明了一个元组类型的变量tupleArr,规定只能是[string,number] 的格式,所以我们在给这个变量赋值时就必须满足元组类型的约束。tupleArr = [‘1’, 2,3]==》这属于给元组添加越界元素,但是失败了。

for example two :

let tupleArr :[string,number] ;
// tupleArr[0] = 1;
tupleArr[0] = '1';
tupleArr[1] = 2;
//tupleArr[2] = 3;  //错误

我们可以单独的给数组项赋值,但是我们的长度如果超过了元组类型初始长度的时候,就会报错,比如我们添加下标为2的时候,这属于给元组添加越界元素,但是失败了。

添加越界元素

那怎么给元组类型添加多余的元素值呢。
for example three :

let tupleArr :[string,number] ;
tupleArr = ['1', 2]
//tupleArr.push(true) //错误 
//tupleArr.push([1,2]) //错误 
tupleArr.push('3')
tupleArr.push(4)
tupleArr.push(5,'6')

当然元组类型还是数组类型的另外一种形式,所以我们可以使用数组的方法push,对原数组进行改变,这样并不会报错,但是我们添加的元素还是有要求的,必须满足元组类型中每个类型的联合类型;如上面的就必须是 stringn | number ;可以这样理解(仅共理解,但不全等于):

let tupleArr: (string | number)[];
tupleArr = ['1', 2]
// tupleArr.push(true) //错误 
// tupleArr.push([1,2]) //错误 
tupleArr.push('3')
tupleArr.push(4)
tupleArr.push(5, '6')

但是元组类型比数组类型要求更苛刻

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

六卿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值