运行多个else if语句

时间:2017-03-08 04:07:29

标签: javascript if-statement

当我运行此代码时,只有INVALID(超过100)和High Distinction有效。任何低于80的数字也显示高优异。我做错了什么?

function calculateGrade() {
    var fvalue = Number(prompt('Please enter final score for unit. Enter a whole    number only'));

    document.write('The final score entered is ' + fvalue + '<br />');

    if (fvalue > 100) {
        document.write('INVALID');
    } else if (80 <= fvalue <= 100) {
        document.write('High Distinction');
    } else if (70 <= fvalue <= 79) {
        document.write('Distinction');
    } else if (60 <= fvalue <= 69) {
        document.write('Credit');
    } else if (50 <= fvalue <= 59) {
        document.write('Pass');
    } else if (0 <= fvalue <= 49) {
        document.write('Fail');
    } else if (fvalue < 0) {
        document.write('INVALID');
    }

}

calculateGrade()

2 个答案:

答案 0 :(得分:0)

您的比较语法无效。您需要一次检查一个边界:

if (80 <= fvalue && fvalue <= 100) {

其他人一样。

更进一步,你只需要检查一个边界,因为else排除了较高端:

if (fvalue > 100) {
    document.write('INVALID');
} else if (80 <= fvalue) {
    document.write('High Distinction');
} else if (70 <= fvalue) {
// ...

答案 1 :(得分:0)

这不是java。 但你肯定可以试试这个。

其他if((fvalue&gt; = 80)&amp;&amp;(fvalue&lt; = 100)){         document.write(&#39; High Distinction&#39;);