簡體   English   中英

如果和否則,如果和其他-javascript

[英]If and else if and else - javascript

我剛剛開始學習Javascript,我正在努力解決是否以及是否使用。 這是我的代碼。 問題在於無論輸入什么數字,結果始終顯示“無”結果。 你能跟我解釋一下嗎?

<script type="text/javascript">
    var grades,scores;
    scores=prompt ('write your score to convert it to grades');
    if (scores>101)
    grades='high distinction';
    else if (scores>91)
    grades='distinction';
    else if (scores>81)
    grades='credit';
    else if (scores>71)
    grades='pass';
    else if (scores>61)
    grades='fail';
    else (scores<60)
    grades='none';
document.write ('your grade name is'+grades);

    </script>

prompt的結果始終是字符串。 為了安全起見,請先將其轉換為數字:

scores = Number(prompt('write your score to convert it to grades'));

另外,您的代碼在這里:

else(scores < 60)
grades = 'none';

else不接受這樣的條件。 可以使用else-if:

else if (scores < 60) grades = 'none';

else

else grades = 'none';

在全:

 var grades, scores; scores = Number(prompt('write your score to convert it to grades')); if (scores > 101) grades = 'high distinction'; else if (scores > 91) grades = 'distinction'; else if (scores > 81) grades = 'credit'; else if (scores > 71) grades = 'pass'; else if (scores > 61) grades = 'fail'; else grades = 'none'; document.write('your grade name is' + grades); 

您需要在使用提示時添加一個參數來嘗試以下操作:scores = prompt('寫您的分數以將其轉換為成績','');

您需要將響應轉換為整數才能比較

你可以簡單地谷歌這個。 這是因為您的提示返回的是字符串而不是整數。 您需要將其解析為一個數字。

scores = parseInt(prompt(...));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM