TypeScript 元组类型

在本教程中,你将学习 TypeScript 中的元组类型,以及它的使用方法。

TypeScript 中的元组类型介绍

元组的工作机制和 数组类型 类似,但有一些额外的条件限制:

例如,可以用元组来表示一个由 stringnumber 类型组成的值:

let skill: [string, number];
skill = ['Programming', 5];

元组中的值的顺序非常重要,如果把 skill 元组中值的顺序调整成 [5, "Programming"],将会得到一个错误提示:

let skill: [string, number];
skill = [5, 'Programming'];

错误提示:

error TS2322: Type 'string' is not assignable to type 'number'.

综上所述,对于有特定顺序且相互关联的数据,使用元组来存储它们是一个很好的实践方法。例如,可以使用一个元组来定义一个 RGB 颜色值,它总是以三个数字的形式出现:

(r,g,b)

如下所示:

let color: [number, number, number] = [255, 0, 0];

color[0], color[1]color[2] 分别映射到 Red, GreenBlue 颜色值上。

可选元组元素

从 TypeScript 3.0 开始,元组可以通过使用问号 (?) 后缀来指定可选元素。例如,可以使用可选的 alpha 通道值来定义一个 RGBA 元组:

let bgColor, headerColor: [number, number, number, number?];
bgColor = [0, 255, 255, 0.5];
headerColor = [0, 255, 255];

注意:RGBA 使用 red, green, bluealpha 模型定义颜色,alpha 指定颜色的透明度。

小结

  • 元组是一个具有固定数量和已知元素类型的数组。

教程来源于Github,感谢cody1991大佬的无私奉献,致敬!

猜你喜欢

技术领导力实战笔记 -〔TGO鲲鹏会〕

Netty源码剖析与实战 -〔傅健〕

系统性能调优必知必会 -〔陶辉〕

Redis核心技术与实战 -〔蒋德钧〕

深度学习推荐系统实战 -〔王喆〕

零基础实战机器学习 -〔黄佳〕

零基础入门Spark -〔吴磊〕

手把手带你写一个Web框架 -〔叶剑峰〕

好记忆不如烂笔头。留下您的足迹吧 :)