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]
相关推荐
索西引擎6 分钟前
【React】key 属性:协调算法中的元素标识机制与最佳实践
前端·javascript·react.js
名字还没想好☜27 分钟前
Go slice 的 append 陷阱:共享底层数组导致的数据串改
开发语言·后端·golang·go·slice
诸神缄默不语30 分钟前
FastAPI后端配置CORS中间件支持浏览器跨域访问
后端·fastapi
Fanta丶31 分钟前
14.Activiti7 网关 排他网关ExclusiveGateway、并行网关ParallelGateway
后端
只会cv的前端攻城狮34 分钟前
动态组件架构设计:从配置到事件驱动全链路解析
前端·vue.js
飞天狗36 分钟前
Next.js 16 App Router 实战:服务端组件与流式渲染
前端·next.js
明月_清风40 分钟前
robots.txt 完全指南:从入门到精通
后端·爬虫
jvmind_dev40 分钟前
Java GC 实战指南(番外篇):被忽视的隐形杀手 —— Class Unloading 如何拖垮 GC
java·后端
OpenTiny社区40 分钟前
TinyEngine 2.11版本发布:AI 进一步融入画布,Vue 工程可一键转DSL
前端·vue.js·github
明月_清风1 小时前
从零写一个"像人"的爬虫:反爬攻防实战指南
后端·爬虫