gpt4 book ai didi

TypeScript:如何推断指定值的确切类型

转载 作者:行者123 更新时间:2023-12-02 02:24:55 25 4
gpt4 key购买 nike

当你用 typescript 写下这个时:

const x = 1;

x 的类型被推断为数字。我可以让 TypeScript 将其推断为类型 1 吗? (所以只能赋值1)。

同样:

const x: {
name: 'Name',
age: 0,
}

我希望 x 的类型被推断为:

{
name: 'Name',
age: 0,
}

我记得我见过一些关键字可以做到这一点,但现在找不到了。

最佳答案

对于x,您的假设不正确

x's type is inferred to be number

仅当您使用 let 关键字时才会出现这种情况。由于您使用了 const 关键字,因此该变量永远无法重新分配,因此您想要发生的事情已经发生了

const x = 1 推断出类型 1 而不是 number

对于 y,实现此目的的方法是使用 const assertions

const y = {
name: 'Name',
age: 0,
} as const;

这会创建一个无法改变的对象;因此,y.name 的类型为 'Name'y.age 的类型为 0

关于TypeScript:如何推断指定值的确切类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65826137/

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