当我运行此代码时,只有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()
答案 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;);