TypeScript的新类型(五):tuple元组

定义

元组(tuple)是⼀种特殊的数组类型,可以存储固定数量的元素,并且每个元素的类型是已知的且可以不同。元组⽤于精确描述⼀组值的类型,?表示可选元素。

  • 注意: 在ts中tuple 不是关键词 ,只是⼀种 特殊的数组 形式
  • 可以存储固定数量元素,且元素类型是已定义并且可以不同的
  • 给元组赋值时元素的个数和元素类型都要符合定义时候的声明(除了 ? 可选元素和 ...元素类型\[\] 任意数量元素情况)
ts 复制代码
// 第⼀个元素必须是 string 类型,第⼆个元素必须是 number 类型。
let arr1: [string,number]
arr1 = ['hello',123]
// 不可以赋值,arr1声明时是两个元素,赋值的是三个
arr1 = ['hello',123,false]

?可选元素的定义

  • ?加在元素后面,表示该属性为可选元素
ts 复制代码
// 第⼀个元素必须是 number 类型,第⼆个元素是可选的,如果存在,必须是 boolean 类型。
let arr2: [number,boolean?]
arr2 = [100,false]
arr2 = [200]

...元素类型[],任意数量的元素的定义

  • ...string[]允许元组有任意数量的元素,在...后为元素的数据类型
ts 复制代码
// 第⼀个元素必须是 number 类型,后⾯的元素可以是任意数量的 string 类型
let arr3: [number,...string[]]
arr3 = [100,'hello','world']
arr3 = [100]
相关推荐
前端小万11 小时前
想做个人副业别乱买服务器!我的 5 个月真实开销分享
前端·后端·github
小蒜学长12 小时前
基于 Spring Boot 的英语单词背诵系统的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端
用户693717500138412 小时前
我买的电视,我还不能研究它吗?
前端·后端·ai编程
Hilaku12 小时前
删了一个没用的 console.log,生产环境直接崩了!
前端·javascript·程序员
计算机魔术师12 小时前
Latent Space 解读 Anthropic 提交 S-1:拟以代码 AN 上市纳斯达克,H1 2026 营收 16.3B 美元
前端
2601_9498477512 小时前
Form-data 跨端三方库仓颉适配全流程
前端·javascript·flutter
利威尔xu12 小时前
RAG 检索面试十连问:召回率从 92% 掉到 61%,答案句被拦腰截断怎么排查
人工智能·后端·大模型·向量数据库·rag
zyseo813 小时前
谷歌SEO 内容更新焕新流程:让老页面重新起量
java·前端·javascript
老王IT13 小时前
Go开发环境搭建(window操作系统)
开发语言·后端·golang
萧瑟余晖13 小时前
Spring Data JDBC与R2DBC详解
java·后端·spring