在 TypeScript 中使用元组(类型推断)

2023-12-24

给出这个稍微人为的例子:

['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(使用前将#替换为@)

在 TypeScript 中使用元组(类型推断) 的相关文章

随机推荐