Javascript 如何设置条件来比较if语句中的变量值?

Javascript 如何设置条件来比较if语句中的变量值?,javascript,Javascript,我想创建一个条件,其中var UPS>=当前以及我设置的其他条件。我发现问题是当我比较一个变量和另一个变量时 var BASE = document.getElementById("Base").value; var UPS = document.getElementById("Ups").value; var CURRENT = document.getElementById("Current").value; var calc = ((UPS-CURRENT)*10); var r

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

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值,您可以使用字符串类型的变量。在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";
}

另一个非常简单的选择:

const validInput = !isNaN(result) && +BASE > 0 && +UPS > 0 && (+CURRENT >= 0 && +UPS >= +CURRENT)
document.getElementById('answer').innerHTML = validInput ? `Calculated Potential: ${result}` : 'Input Valid Numbers'

UPS
CURRENT
是字符串。比较前将其转换为数字。^使用
var BASE=+document.getElementById(“BASE”).value可以轻松完成此操作-一元
+
为您转换为一个数字。的可能重复项请解释更改的内容和原因。一元+将字符串转换为整数。评估的其余部分将被存储。其余的是猫王接线员。你想解释什么?