【TypeScript】元组

元组(Tuple)是 TypeScript 中的一种特殊数据类型,它允许你定义一个固定数量和类型的元素组合。元组可以包含不同类型的数据,每个数据的类型在元组中都是固定的。以下是 TypeScript 中元组的基本用法和特点:

// 声明一个元组
let person: [string, number, boolean];
person = ['Alice', 25, true];

console.log(person[0]); // 输出:Alice
console.log(person[1]); // 输出:25

// 错误示例,访问超出索引范围的元素
// console.log(person[3]); // 错误:Tuple type '[string, number, boolean]' of length '3' has no element at index '3'.

// 错误示例,类型不匹配
// person = ['Bob', '30', false]; // 错误:Type 'string' is not assignable to type 'number'.

const arr: readonly [number, boolean] = [1,true];
// readonly 设置为只读,以下都不可以修改
// arr[0] = 666 
// arr.push(1)
// 如果只是用 const 修饰 arr,则 arr 不可以修改,arr[0] 等可以修改

也可以起变量名:
在这里插入图片描述

元组的特点:

  1. 元组可以包含多种不同类型的数据,但每个数据的类型是固定的,按照声明的顺序排列。

  2. 元组的长度是固定的,一旦声明,就不能改变。你不能往元组中添加或删除元素。

  3. 可以通过索引来访问元组中的元素,索引从 0 开始。

  4. 元组的类型根据声明时的类型推断来确定,可以在声明时明确指定类型。

  5. 如果访问超出了元组的索引范围,TypeScript 将会报错。

typetypeof 的用法:

const arr: readonly [x:number, y:boolean] = [1,false];

// type first = number
type first = typeof arr[0] 
 // type len = 2
type len = typeof arr['length']

你可能感兴趣的:(TypeScript,typescript,ubuntu,javascript)