Zlog
首页时间轴关于
Zlog

一个探索技术、编程和构建 Web 的个人空间。

© 2026 Zlog

导航

首页时间轴关于

链接

首页/数组|元组类型变量声明

数组|元组类型变量声明

TS中的元祖类型其实就是数组类型的扩展,元祖用于保存定长定数据类型的数据

Z

Zephyr110

2021年5月2日·1 分钟
|
frontendfrontend-typescript

1. 数组

1.1 数组元素类型一致

  • Array<类型>
ts
// 需求: 要求定义一个数组, 这个数组中将来只能存储数值类型的数据
let arr: Array<number> // 表示定义了一个名称叫做arr的数组, 这个数组中将来只能够存储数值类型的数据
arr = [1, 3, 5]
// arr1 = ['a', 3, 5]; // 报错
console.log(arr)
  • 类型[]
ts
// 需求: 要求定义一个数组, 这个数组中将来只能存储字符串类型的数据
let arr: string[] // 表示定义了一个名称叫做arr的数组, 这个数组中将来只能够存储字符串类型的数据
arr = ['a', 'b', 'c']
// arr = [1, 'b', 'c']; // 报错
console.log(arr)

1.2 数组元素类型不一致

  • 联合类型声明数组 (类型 1 | 类型 2)[]
ts
let arr: (number | string)[]
// 表示定义了一个名称叫做arr的数组, 这个数组中将来既可以存储数值类型的数据, 也可以存储字符串类型的数据
arr = [1, 'b', 2, 'c']
// arr3 = [1, 'b', 2, 'c', false]; // 报错
console.log(arr)
  • 任意类型元素的数组 any[]
ts
let arr: any[] // 表示定义了一个名称叫做arr的数组, 这个数组中将来可以存储任意类型的数据
arr = [1, 'b', false]
console.log(arr)

1.3 严格限制类型和长度

  • 元祖类型 [string, number, boolean]

TS中的元祖类型其实就是数组类型的扩展,元祖用于保存定长定数据类型的数据

ts
let arr: [string, number, boolean]
 
// 表示定义了一个名称叫做arr的元祖, 这个元祖中将来可以存储3个元素, 第一个元素必须是字符串类型, 第二个元素必须是数字类型, 第三个元素必须是布尔类型
 
arr = ['a', 1, true]
// arr = ['a', 1, true, false]; // 超过指定的长度会报错
arr = ['a', 1, true]
console.log(arr)

标签

frontendfrontend-typescript

评论

相关文章

Facade

外观模式:就是提供一个统一的接口去访问多个子系统的多个不同的接口,为子系统中的一组接口提供统一的高层接口。使得子系统更容易使用,不仅简化类中的接口,而且实现调用者和接口的解耦。

2021年12月26日·2 分钟

Singleton

单例模式:就是在整个运行时域,一个类只有一个实例对象。

2021年12月26日·2 分钟

Function Overloading

函数名相同,函数的参数列表不同(参数个数、参数类型),根据参数的不同之行不同的操作。

2021年12月19日·2 分钟

← 返回文章列表