TypeScript:定义可以是bool或null的类型

sha*_*hal 5 types typescript

我有一个函数可以返回true,false或null.

我该如何定义这种类型?就目前而言,作为临时解决方案,我将其定义为boolean | string,但它具有误导性,有人可能认为它真的可能会返回字符串......有什么想法?

Bru*_*der 12

这取决于您使用的打字稿版本.

  • 在2.0之前null可以返回任何类型的"(在域中"),boolean你的类型也是如此

  • 从2.0开始,如果启用--strictNullChecks则必须指定类型可以返回null.所以你的类型将是boolean | null

更多细节在这里段落Non-nullable Types