[英]Condition in Javascript doesn't work
由於 JavaScript 中的這些條件,我快要生氣了。 為什么這個不起作用?
if (isNaN(first) || isNaN(second) && (act !== '-' || act !== '+'))
它應該檢查第一個是數字,第二個是數字,行為是減號還是加號。 數字沒問題,但它不檢查行為是否正確。 怎么了?
例如,第一個是 1,行為是一個,第二個是 2。這行不通。
聚苯乙烯
我對 C++ 和 Java 有一些了解。 我從來沒有遇到過任何問題。 但是自從我開始學習 Javascript 以來,我犯了很多這樣的錯誤。
這種表達方式有不同的系統嗎?
它應該檢查第一個是數字,第二個是數字,行為是減號還是加號。 數字沒問題,但它不檢查行為是否正確。
因此,對於上述要求,正確的陳述是
if ( !isNaN(first) && !isNaN(second) && (act == '-' || act == '+'))
如果你想反轉條件,那就是
if ( !(!isNaN(first) && !isNaN(second) && (act == '-' || act == '+')))
這相當於
if ( isNaN(first) || isNaN(second) || (act != '-' && act != '+'))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.