给出这个稍微人为的例子:
['List', 'Of', 'Names']
.map((name, index) => [name, index % 2])
.map(([name, num]) => );
为什么 name 和 num 位于 type 的最后一行string | number
显然推断为字符串和数字的数组,你们知道是否有一种方法可以使用类型推断,以便 name 是字符串,num 分别是数字?
您可以使用const 断言 https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-4.html#const-assertions:
['List', 'Of', 'Names']
.map((name, index) => [name, index % 2] as const) // insert `as const` here
.map(([name, num]) => { }); // name: string, num: number
看看游乐场样本 https://www.typescriptlang.org/play?#code/NocgMglgzgLiA0ACEB5AZg5A5AhgWwFMoQBdAKEUsQDo8cAHACkYDt8CkIWATAgDwCUiALwA%20RMDaFOPfogCkiAEwlEOKIgDGAexawhAegOIuUAgCcYiAAbqtu2NcQALCwQpVaDZpPZIWAK54JEJiiADeiAC%20AgDciEaIUgQAXIiw5lwA5v5BaYF4AEYWQA.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)