我不确定如何准确地表达这一点,我想知道 OR 运算符如何在条件中准确发挥作用?
这里是示例代码,它只是计算字符串中的 B。
var countB = function(s) {
var counter = 0;
for (var c = 0; c < s.length; c++) {
if (s.charAt(c) == "B") {
counter++;
}
}
return counter;
}
console.log(countB("Butter balls are BBBbBBUttERRYY!"));
现在,当我运行它时它运行良好,但是当我将 if 条件更改为
s.charAt(c) == "B" || "b"
它计算所有的字符。
为什么要这样做,正确的语法是什么?
最佳答案
s.charAt(c) == "B"|| "b"
本质上等于 (s.charAt(c) == "B") || ("b")
每当 s.charAt(c) == "B"
的检查失败时,"b"
的值为真并成功。
正确的语法是 s.charAt(c) == "B"|| s.charAt(c) == "b"
关于javascript - 在 JavaScript 中,条件语句中 OR 运算符的正确语法是什么?我错过了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35953753/