如何为返回的嵌套数组元组定义TypeScript类型?
解决TypeScript元组类型定义错误
你遇到的错误是因为TypeScript对命名元组有严格要求:元组的所有成员必须统一命名,或者全部不命名,不能混合使用。你当前的定义里第一个元素没加名字,后面三个都加了,违反了这个规则。
两种正确的写法:
1. 给所有成员添加命名(推荐,可读性更强)
给第一个元素也加上描述性的名字,比如coords,让元组的每个位置含义更明确:
type nextUlamReturn = [ coords: number[], d: number, prevRing: number, prevRingPosition: number ]
2. 移除所有成员的命名
如果不需要命名,直接保留类型即可:
type nextUlamReturn = [ number[], number, number, number ]
这两种写法都能匹配你的返回语句return [[x, y], d, prevRing, prevRingPosition],根据实际需求选择就行。
内容的提问来源于stack exchange,提问作者Felix Prackwieser
相关产品推荐
相关产品推荐

