const number = prompt("Enter your number");
const txt = "You result is : ";
switch (number) {
case (number >= 80 && number <= 100):
document.write(`${txt} A `);
break;
case (number >= 70 && number <= 80):
document.write(`${txt} A gread`);
break;
case (number >= 60 && number <= 70):
document.write(`${txt} B gread`);
break;
case (number >= 50 && number <= 60):
document.write(`${txt} C gread`);
break;
case (number >= 33 && number <= 50):
document.write(`${txt} D gread`);
break;
case (number >= 0 && number <= 33):
document.write(`${txt} Field !`);
break;
case (number > 100 || number < 0):
document.write(`It's not a valid number. Please input any valid number.`);
break;
default:
document.write(`Not input any number. Please input any number .`);
break;
}
uj5u.com熱心網友回復:
使用 switch 陳述句,您可以在switch. 在你的情況下,那將是number.
因此,您的案例將使用數字進行評估。這是會發生的事情:
- 假設我們在提示中輸入“88”。
- 您要評估的第一件事
number是(number >= 80 && number <= 100). 后者的結果是true。 - 現在的價值
number,88相比較true,這樣的:88===true。 - 這導致 a
false,因此評估下一個案例。 - 以下情況也會發生同樣的情況,直到您遇到默認情況。
uj5u.com熱心網友回復:
這段代碼不起作用的原因有兩個:
第一個原因是因為該
prompt方法回傳一個字串,您可以通過鍵入看到console.log('Type of number:', typeof number); // Expected output: Type of number: string您可以通過決議提示方法的輸出來解決這個問題,如下所示
const number = parseInt(prompt("Enter your number"));第二個原因是因為在
switch陳述句陳述句中,將 switch 運算式的評估值與 case 的評估值進行比較。這意味著將
number(number) 的值與運算式(number >= 80 && number <= 100)(comparison expression) 等進行比較。因此,除非 yoru case 運算式中的一個產生一個數字,
switch否則將嘗試評估number運算式的值(始終為真),這意味著switch正在比較45 === true,不匹配任何情況。
只需使用if/else代替:
if (number >= 80 && number <= 100)
document.write(`${txt} A `);
else if (number >= 70 && number <= 80)
document.write(`${txt} A gread`);
else if (number >= 60 && number <= 70)
document.write(`${txt} B gread`);
else if (number >= 50 && number <= 60)
document.write(`${txt} C gread`);
else if (number >= 33 && number <= 50)
document.write(`${txt} D gread`);
else if (number >= 0 && number <= 33)
document.write(`${txt} Field !`);
else if (number > 100 || number < 0)
document.write(`It's not a valid number. Please input any valid number.`);
else
document.write(`Not input any number. Please input any number .`);
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/370135.html
標籤:javascript 切换语句
