typeScript5(元组)

数组一般由同种类型的值组成,但有时我们需要在单个变量中存储不同类型的值,这时候我们就可以使用元组。在 JavaScript 中是没有元组的,元组是 TypeScript 中特有的类型,其工作方式类似于数组。

元组最重要的特性是可以限制数组元素的个数和类型,它特别适合用来实现多值返回。

元组类型的解构赋值

我们可以通过下标的方式来访问元组中的元素,当元组中的元素较多时,这种方式并不是那么便捷。

注意点:在解构赋值时,如果解构数组元素的个数是不能超过元组中元素的个数,否则也会出现错误

//可结构赋值

let employee: [number, string] = [1, "Semlinker"];

let [id, username] = employee;

console.log(`id: ${id}`)

元组类型的可选元素

let a:[x:number,y?:boolean] = [1]

元组类型的剩余元素

元组类型里最后一个元素可以是剩余元素,形式为 ...X,这里 X 是数组类型。剩余元素代表元组类型是开放的,可以有零个或多个额外的元素。

type RestTupleType = [number, ...string[]];

只读的元组类型

我们可以为任何元组类型加上 readonly 关键字前缀,以使其成为只读元组。

在使用 readonly 关键字修饰元组类型之后,任何企图修改元组中元素的操作都会抛出异常

const point: readonly [number, number] = [10, 20];

相关推荐
likuolei21 小时前
XSL-FO 软件
java·开发语言·前端·数据库
正一品程序员21 小时前
vue项目引入GoogleMap API进行网格区域圈选
前端·javascript·vue.js
j***894621 小时前
spring-boot-starter和spring-boot-starter-web的关联
前端
star_111221 小时前
Jenkins+nginx部署前端vue项目
前端·vue.js·jenkins
im_AMBER21 小时前
Canvas架构手记 05 鼠标事件监听 | 原生事件封装 | ctx 结构化对象
前端·笔记·学习·架构
JIngJaneIL21 小时前
农产品电商|基于SprinBoot+vue的农产品电商系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·农产品电商系统
Tongfront21 小时前
前端通用submit方法
开发语言·前端·javascript·react
可爱又迷人的反派角色“yang”21 小时前
LVS+Keepalived群集
linux·运维·服务器·前端·nginx·lvs
han_21 小时前
前端高频面试题之CSS篇(二)
前端·css·面试
JIngJaneIL21 小时前
书店销售|书屋|基于SprinBoot+vue书店销售管理设计与实现(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·书店销售管理设计与实现