如果变量匹配3个条件

时间:2012-01-18 15:13:33

标签: javascript

我需要一个if语句来检查数字是否= 0,或者介于5000和3600000之间。如何检查所有3个条件?

数字可以是0或5000或以上或3600000或更低。它不能是-1,1.1 2.3或0到5之间的任何东西。

这是我现在所拥有的,这项工作用于检查是否小于5000或大于3600000

var intervalCheck = interval * digit
if(isNaN(intervalCheck))
{
    alert("Must be a number.");
}
else if((intervalCheck < 5000)||(intervalCheck>=3600000))
{
    alert("Must be between 5 seconds and 1 hour.");
}
else
{
    localStorage["interval_setting"] = interval * digit;
    saveActions();
}

3 个答案:

答案 0 :(得分:3)

if ((intervalCheck == 0) || (intervalCheck >= 5000 && intervalCheck <= 3600000)) {
    // put your code here
}

您可以使用任何javascript逻辑和比较运算符将任意数量的逻辑运算组合到一个if语句中。

您可以在此处查看演示工作:http://jsfiddle.net/jfriend00/y5tRK/

答案 1 :(得分:2)

else if(intervalCheck === 0 || (intervalCheck >= 5000 && intervalCheck <= 3600000)) {
  localStorage["interval_setting"] = interval * digit;
  saveActions();
}
else {
   alert('You broke something");
}

===表示检查类型和值。这确保了如果intervalCheck为""false,则intervalCheck既是数字又等于零,而不是评估为真。然后我们给出or条件。我们将它包括在括号中,因为我们需要确保该值落在我们的两个数字之间。括号表示将使用or作为整体进行评估。

答案 2 :(得分:0)

if(!isNaN(intervalCheck) && (intervalCheck == 0 || (intervalCheck >= 5000 && intervalCheck <= 3600000)))