我想在TypeScript中的算术运算中使用一个布尔变量,但编译器出现错误:“算术运算的右侧必须是类型为“ any”,“ number”或枚举类型。”
我知道可以将布尔型转换为类型为
但这是最好的解决方案吗?
class User {
hasFoo: boolean;
};
let user = new User();
let amount : number = BASE + FOO_FACTOR * user.hasFoo
我知道可以将布尔型转换为类型为
<any>
的变量并且它可以正常工作:let amount : number = BASE + FOO_FACTOR * <any>user.hasFoo
但这是最好的解决方案吗?
let amount: number = user.hasFoo ? BASE + FOO_FACTOR : BASE;
或let amount: number = BASE + (user.hasFoo ? FOO_FACTOR : 0);
。 - Søren D. Ptæus