[英]Or operator not working in IF statement Node.js
我最初在 node.js 中有一條路由,說明了這一點:
如果 req.url === 某物或某物或某物或某物,則執行此操作,否則,執行此操作。
問題是即使不滿足 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 總是會導致||
通過。
else 語句永遠不會執行,因為您的 if 條件總是返回 true..
if (category === 'stupid' || 'stupid2') {
條件的第二部分,即||
運算符是'stupid2
,這是一個真值
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.