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];

相关推荐
接着奏乐接着舞。11 小时前
部署BFF与前端的踩坑与经验记录
前端·node.js
小李子呢021118 小时前
前端八股CSS(2)---动画的实现方式
前端·javascript
GreenTea19 小时前
从 Claw-Code 看 AI 驱动的大型项目开发:2 人 + 10 个自治 Agent 如何产出 48K 行 Rust 代码
前端·人工智能·后端
渣渣xiong20 小时前
从零开始:前端转型AI agent直到就业第五天-第十一天
前端·人工智能
布局呆星20 小时前
Vue3 | 组件通信学习小结
前端·vue.js
C澒20 小时前
IntelliPro 企业级产研协作平台:前端智能生产模块设计与落地
前端·ai编程
OpenTiny社区21 小时前
重磅预告|OpenTiny 亮相 QCon 北京,共话生成式 UI 最新技术思考
前端·开源·ai编程
前端老实人灬21 小时前
web前端面试题
前端
Moment1 天前
AI 全栈指南:NestJs 中的 Service Provider 和 Module
前端·后端·面试