当值已经设置为 false 时,我是否需要在打字稿中指定数据类型布尔值?



public expanded: boolean = false;

上面的代码可以简化为类似public expanded = false;吗?

只是想知道转译器是否会从中受益?

简短的回答,是的,你可以简单地把它写成

public expanded = false;

这是因为对于boolean等基元数据类型,TypeScript 将能够自动推断类型。在这种情况下,扩展肯定会被类型化为布尔值,而无需显式提供布尔类型。

例如,如果您尝试使用任何其他非布尔值(如字符串(重新分配代码中某处的expanded属性,

this.expanded = '1';

你会意识到它会抛出一个错误:

TS2322:类型"1"不可分配给类型"布尔值"。

是的,打字稿会自动推断类型。

最新更新