我最初在 node.js 中有一条路线是这样说的:
如果 req.url === something or something or something or something, do this, else, do that.
问题是即使不满足 if 条件,else 语句也不会执行。无论如何都只执行 if 语句
我已经将我的路线分解到最低限度,试图找出问题所在。我将其简化为:
app.get('/test', function(req,res) {
var category = 'stupid3';
if(category === 'stupid' || 'stupid2') {
res.end('yup');
} else {
res.end('nope');
}
});
我做错了什么?
为什么else语句不执行?
最佳答案
您使用不当。
category === 'stupid' || category === 'stupid2'
您的版本实际上...
(category === 'stupid') || 'stupid2'
...因此,因为非空字符串是“真实的”,所以 RHS 总是会导致 ||
通过。
关于javascript - 或者运算符在 IF 语句 Node.js 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33089632/