gpt4 book ai didi

typescript - 键入 N 个数字的元组,后跟单个字符串

转载 作者:行者123 更新时间:2023-12-04 13:07:09 34 4
gpt4 key购买 nike

考虑如下数组类型:

let example1: MyArray = ['John'],
example2: MyArray = [4, 5, 1, 5, 'Eric'],
example3: MyArray = [1, 5, 7, 3, 4, 5, 1, 'Joe'],
...

最后是一个字符串和任意数量的数字。

到目前为止,我可以想象 MyArray 类型的简单实现(看起来像 Death by a Thousand Overloads problem ):

type MyArray = [string]
| [number, string]
| [number, number, string]
| [number, number, number, string]
| [number, number, number, number, string]
...

这显然不是最优的。是否存在更好的方法?

最佳答案

是的,你可以输入这个,但只能在 Typescript 4.2 或更高版本中输入:Leading/Middle Rest Elements in Tuple Types .

type MyArray = [...number[], string];

const example1: MyArray = ['John'],
example2: MyArray = [4, 5, 1, 5, 'Eric'],
example3: MyArray = [1, 5, 7, 3, 4, 5, 1, 'Joe'];

在此之前,3.0 引入了 Rest elements in tuple types , 但那时,剩余元素仅限于元组的末尾。所以您可以执行 [string, ...number[]],但不能执行 [...number[], string]

关于typescript - 键入 N 个数字的元组,后跟单个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68866717/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com