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;

相关推荐
去伪存真9 分钟前
构建你的第一个 DevOps AI Agent:自动化捕获、分析并修复 CI 故障
前端·agent
niucloud-admin21 分钟前
JAVA V6 多商户商城 开发文档——手机端前端
java·开发语言·前端
skywalk816330 分钟前
deepseekharness在对话中,有四种模式,分别是极简、PTC、创造和标准模式,每种模式下挂载的插件、skill等数量不一样
前端·人工智能·实践
愛芳芳39 分钟前
element-plus+vite+vue3+pinpa+mock+typeScript搭建经典的电商管理后台
前端·javascript·typescript
liangshanbo12151 小时前
面试题:常见的前端构建工具有哪些?分别适用于什么场景?
前端
linux_cfan1 小时前
videojs v10 源代码系列解读:30 · `SerialRunner` 与 `ConcurrentRunner`
前端
liangshanbo12151 小时前
面试题:页面需要发起大量 Ajax / HTTP 请求时,如何优化请求性能?
前端·http·ajax
lyz2468592 小时前
vue3页面因参数未声明而报错的常犯错误
前端·javascript·vue.js
摸爬滚打的小李2 小时前
流程图同步AI生成
前端
Hilaku2 小时前
我重写了整个项目,但没人感谢我!
前端·javascript·程序员