如何针对多个数字范围测试一个变量

时间:2015-02-15 04:37:17

标签: javascript numbers

我是一名学生学习JavaScript。我还是新手,我需要一些帮助

我正在尝试创建一个脚本,告诉人们输入一个将是他们平均值的数字,它会告诉他们他们得到的字母等级。

{
    alert("You got an A+, excellent!")

} else if (average   && 90-94) {
    alert("You got an A, congrats!")

} else if (average  87-89) {
    alert("You got an B+, great job!")

} else if (average  83-86) {
    alert("You got a B, good!")

} else if (average  80-82) {
    alert("You got a B-, good but push for an A!")

} else if (average  77-79) {
    alert("You got an C+, good but work harder!")

} else if (average  73-76) {
    alert("You got an C, work harder!")

} else if (average  70-72) {
    alert("You got a C-, work harder!")

} else if (average  65-69) {
    alert("you got a D, so poor!")

} else if (average <65) { 
    alert("F, see you next semester")

} else { 
    alert("Invalid, please try again")
}

现在的问题是,我不知道如何在每个部分添加多个数字。我试过&amp;&amp;和逗号,但它没有用。

3 个答案:

答案 0 :(得分:2)

您也可以这样做:

var score = parseInt(prompt("Please enter score (0 to 100)"));

switch (true) {
    case (score > 100 || score < 0):
        alert("Invalid, try again!");
        break;
    case (score >= 94):
        alert("You got an A+, excellent!");
        break;
    case (score >= 90):
        alert("You got an A, congrats!");
        break;
    case (score >= 87):
        alert("You got a B+, super!");
        break;

    // etc., etc.

    case (score >= 65):
        alert("D, so poor!");
        break;
    default:
        alert("F, see you next semester.");
}

答案 1 :(得分:1)

} else if (average >= 90  &&  average <= 94) {

答案 2 :(得分:1)

var raw_value = 11.0;
if (raw_value > 10.0) {
    alert("...");
} else if (raw_value > 5.0) {
    alert("...");
} else {
    alert("...");
}

从数字开始检查从高到低,以便您不需要&&进行范围检查。

有一种方法可以switch的方式实现这一点,请阅读更多here

快乐的编码。