首页 > 解决方案 > 如何设置条件来比较 if 语句中的变量值?

问题描述

我想创建一个条件,其中 var UPS >= CURRENT 以及我设置的其他条件。我发现问题是当我将一个变量与另一个变量进行比较时。

var BASE = document.getElementById("Base").value;
var UPS = document.getElementById("Ups").value;
var CURRENT = document.getElementById("Current").value;     
var calc = ((UPS-CURRENT)*10);
var result = parseInt(BASE)+parseInt(calc);


if(!isNaN(result) && BASE>0 && UPS>0 && CURRENT>=0 && UPS>=CURRENT)
{       
    document.getElementById("answer").innerHTML="Calculated Potential: "+result;
}
else
{
    document.getElementById("answer").innerHTML="Input valid numbers";
}

我想要它,因此计算不会显示是否有负值以及当前值是否大于 UPS 值

标签: javascript

解决方案


您使用字符串类型的变量。在 if 语句中使用之前,您应该将它们转换为数字。最简单的解决方案是:

if(!isNaN(result) && +BASE > 0 && +UPS > 0 && (+CURRENT >= 0 && +UPS >= +CURRENT)){       
    document.getElementById("answer").innerHTML="Calculated Potential: " +result;
} else {
    document.getElementById("answer").innerHTML="Input valid numbers";
}

推荐阅读