【发布时间】:2020-07-24 02:17:55
【问题描述】:
我想定义一个数组类型,它允许根据位置不同的类型,但以重复、交替的方式,就像在某些数据结构中发现的那样。
例子:
[A, B, A, B, ...]
[A, B, C, A, B, C, ...]
这可能吗?
我知道我可以为具有固定数量元素的数组定义它,如上面(没有省略号),并且
(A | B)[]
另一方面,允许任何元素为 A 或 B 类型。
我试过这些:
[(A, B)...]
[...[A, B]]
[(A, B)*]
【问题讨论】:
-
你不能。元组按索引具有不同类型但长度固定,数组不允许您定义交替类型。看起来您的数据结构很奇怪,为什么不使用例如
[A, B][],元组数组? -
谢谢。 :-( 用于 Elasticsearch 批量操作。
-
这是个好问题。希望有一个解决方案。
-
@Arc 您能否将具有此类要求的弹性文档的链接发给我?
标签: arrays typescript types