[英]Am i using the logical operator OR (||) correctly, in javascript?
if ((typed_edge!='Either') || (typed_edge!='Walkable')){
alert("YES");
alert("type_edge"+ typed_edge + bus_stops_visited[$k]+ " " +bus_stops_visited[$k+1]);
}
如果typed_edge的值為Either,則顯示警報(“ YES”)。
不應該不顯示嗎?
我想要的是,當typed_edge的值為“ Either”或“ Walkable”時,不顯示警報。 但這似乎並非如此!
您在上面擁有它的方式需要這樣做:
if('Either' !== typed_edge && 'Walkable' !== typed_edge) {
// this means - it is NOT both of them
}
您現在擁有的方式說:
如果不是
要么
如果它不適合步行
這意味着如果它是“可步行的”,則第一個條件的值為“ true”
這意味着警報將觸發。
相反,如果為“ Either”,則第二個條件為“ true”,並且會觸發。
嘗試這個:
if (typed_edge !== 'Either' && typed_edge !== 'Walkable'){
alert("YES");
alert("type_edge"+ typed_edge + bus_stops_visited[$k]+ " " +bus_stops_visited[$k+1]);
}
編輯:在問題中錯過了“不是”
if (typed_edge==='Either' || typed_edge==='Walkable'){
alert("YES");
alert("type_edge"+ typed_edge + bus_stops_visited[$k]+ " " +bus_stops_visited[$k+1]);
}
您應該將條件設為句子,以便於構建。 這樣,您只需將語法替換為所需的語法即可。
||
如果正確使用則有條件,但是if()
在if()
語句中使用not-equal-to
,請嘗試以下操作:
if ((typed_edge=='Either') || (typed_edge=='Walkable')){
alert("YES");
alert("type_edge"+ typed_edge + bus_stops_visited[$k]+ " " +bus_stops_visited[$k+1]);
}
也許嘗試另一種方法。 將您列入白名單/黑名單的值加載到數組中,並檢查是否找到任何值。
if(["Either","Walkable"].indexOf(typed_edge) > -1)
{
alert('got either or walkable here');
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.