我想檢查firstday
等於五,六,在這兩種情況下,如果totalDays
等於31,然後做一些事情,爲此哪種說法是正確的?如何使用||和&&一起在一個if語句
代碼1:
if (firstday > 5 || firstday > 6 && totalDays == 31){}
代碼2:
if (firstday > 5 && totalDays == 31 || firstday > 6 && totalDays == 31) { }
我想檢查firstday
等於五,六,在這兩種情況下,如果totalDays
等於31,然後做一些事情,爲此哪種說法是正確的?如何使用||和&&一起在一個if語句
代碼1:
if (firstday > 5 || firstday > 6 && totalDays == 31){}
代碼2:
if (firstday > 5 && totalDays == 31 || firstday > 6 && totalDays == 31) { }
這是正確的答案:
if ((firstday == 5 || firstday == 6) && totalDays == 31){
//Do something
}
只是一個指針,你應該使用'==='而不是'==' – Rajesh
兩者都是錯誤 你需要使用==操作它。
if ((firstday == 5 || firstday == 6) && totalDays == 31){}
您需要周圍的括號||運營商 – mseifert
雅。我剛剛編輯它。謝謝。 –
if ((firstday == 5 || firstday == 6) && totalDays == 31){}
在這裏,首先執行內最括號內(firstday == 5 || firstday == 6)
表達。基於剩餘表達式計算的值,如果上述表達式返回false剩餘表達不會由於false&&(true||false)
反正假評價。
你會打擾一下解釋你的代碼嗎?只是將它傾倒在答案中是沒有用的。 –
第一個條件: 它返回真,如果firstday
是5 OR 6 .. 和 TotalDays爲31
if ((firstday == 5 || firstday == 6) && totalDays == 31){ }
無論你的邏輯工作,但你在你的問題中提到的是「如果第一天是等於五或6」,所以我會建議你使用「==」,而不是「>」。後者將接受5以上的任何值,這與你想要的不符。
下列兩行之一將實現你想要的結果。
if (firstday == 5 || firstday == 6 && totaldays == 31) {}
OR
if (firstday == 5 && totalDays == 31 || firstday == 6 && totalDays == 31) { }
我認爲你不需要'|| firstday> 6'在第一次聲明中 – Mahi
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Operator_Precedence – Mahi
嘗試迭代英語的條件和使用'()'到組的條件。在你的陳述*第一天必須等於5或6,但在這兩種情況下,totalDays必須是31 *。所以解決第一部分:'第一天=== 5 ||第一天=== 6'。你的第二個條件是'totalDays === 31''。但是,這兩種情況下發生的,所以這成爲'(firstday === 5 || firstday === 6)&& totalDays === 31' – Rajesh