[英]why wont “||” (or) work in my javascript function?
我正在嘗試編寫代碼,以便如果給定 2 個代表我的生日(月 = 11,日 = 3)的數字,它將記錄“你怎么知道”。 其他任何東西都會返回“又是一天”。 也需要月份和日期的順序無關緊要。
我把它寫成:
function birthday (month,day){
let result;
if( month == "11" && day == "3") || (day == "3" && month = "11"){
result = "How did you know?";
}
else {
result = "Just Another Day";
}
return result;
}
console.log(birthday(3, 11));
但它返回並告訴我|| (或)是一個意外的標記......我還能怎么寫這個?
||
的兩側有兩個條件操作員說完全相同的話。 在第二個條件下,您需要檢查日期是否為 11 和月份3。此外,您在最后一個比較中使用=
運算符而不是==
:
if ((month == "11" && day == "3") || (month == "3" && day == "11")) {
您應該在 if 之后添加 "(" 並在(day == "3" && month == "11")
之后添加 ")" 。還將最后一次比較中的 = 運算符更改為 == 並將最后一次比較從(day == "3" && month == "11")
到(month == "3" && day == "11")
。 將您的代碼更改為此代碼:
function birthday (month,day){ let result; if( (month == "11" && day == "3") || (month == "3" && day == "11")){ result = "How did you know?"; } else { result = "Just Another Day"; } return result; } console.log(birthday(3, 11));
我修改了你的代碼,最后一個比較符號(==)是錯誤的,它是一個賦值符號(=),你正在比較日和月兩次,現在你的代碼可以正常工作了!
function birthday (month, day){ let result = ""; if(( month == "11" && day == "3") || (month == "3" && day == "11")){ result = "How did you know?"; } else { result = "Just Another Day"; } return result; } console.log(birthday(3, 11));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.