【问题标题】:Converting boolean to integer [duplicate]将布尔值转换为整数[重复]
【发布时间】:2014-09-03 08:38:16
【问题描述】:

我想知道为什么

recommendation=false;
var val = "Bipin " + recommendation?1:0;
console.log(val);

返回

1

但是

recommendation=false;
var x=recommendation?1:0;
var val = "Bipin " + x;
console.log(val);

打印

Bipin 0

谁能解释这种行为?

【问题讨论】:

  • 你可以考虑酷一点,用+!!recommendation

标签: javascript ternary-operator


【解决方案1】:
"Bipin " + recommendation?1:0; 

被解释为

("Bipin " + recommendation)?1:0

在这种情况下

"Bipin " + recommendation(is always truthfully)

因此结果始终为 1

like @Qantas 94 Heavy 指出这是您需要做的运算符优先级问题

 "Bipin " + (recommendation?1:0); 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-12-03
    • 2021-03-06
    • 1970-01-01
    • 2018-12-02
    • 2016-05-07
    • 1970-01-01
    • 1970-01-01
    • 2011-01-13
    相关资源
    最近更新 更多