gpt4 book ai didi

typescript :问号与未定义的类型联合

转载 作者:行者123 更新时间:2023-12-03 16:48:39 40 4
gpt4 key购买 nike

当在名称末尾指定一个带有问号的成员时,类型签名会自动扩展为包括 undefined .创建一个没有这个成员的实例是可以的:

interface Option{
val? : number; // hover over val and it tells you that the type is number|undefined
}

let o: Option = {};

推断出的 val 类型是 number|undefined .到目前为止,我认为这是问号的唯一效果。但是手动注释类型联合并没有相同的效果:
interface Union{
val : number|undefined;
}

let u: Union = {}; // compiler complains about missing member val

为什么第二个代码示例不正确?

最佳答案

您的第一个选项是“val 是一个带有类型编号的可选属性”。它可以在那里,但不是必须的。

您的第二个选项表示“val 是必需的属性,其值可以为数字或未定义”。因此,它会抛出编译器错误。

关于 typescript :问号与未定义的类型联合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62302128/

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