Javascript比较数字

Javascript比较数字,javascript,html,Javascript,Html,这是我第一次,所以请温柔一点。 不久前我写了一个简单的数字比较。但这一比较给出了一个“错误”的结论 这是我的密码: var UpperLimit=document.getElementById(“UpperLimit”).value; var LowerLimit=document.getElementById(“LowerLimit”).value; if(上限

这是我第一次,所以请温柔一点。 不久前我写了一个简单的数字比较。但这一比较给出了一个“错误”的结论

这是我的密码:

var UpperLimit=document.getElementById(“UpperLimit”).value;	
var LowerLimit=document.getElementById(“LowerLimit”).value;	
if(上限<下限){
警报(“上限比下限小!”)
返回false;//退出函数
}否则{
//**用上限和下限做一些事情**
}
下限:m³

上限:m³
您的输入值仍然返回,因此您必须将输入值转换为数字

你可以这样做:

var UpperLimit = Number(document.getElementById("UpperLimit").value);   
var LowerLimit = Number(document.getElementById("LowerLimit").value);   

这是因为该值是字符串类型,即使您将输入类型设置为
number

1000 < 150 = false;
"1000" < "150" = true;
编辑:


对于字符串比较发生这种情况的原因,请参考:

您必须将输入值强制转换为数字,因为它返回字符串

var UpperLimit = Number( document.getElementById("UpperLimit").value);  
var LowerLimit = Number( document.getElementById("LowerLimit").value);  

if (UpperLimit < LowerLimit){
alert("Upper Limit is smaller as the Lower Limit!")
return false;   //Exit Function
} else {

**do something with the Upper and Lower Limit**

}
var UpperLimit=Number(document.getElementById(“UpperLimit”).value);
var LowerLimit=Number(document.getElementById(“LowerLimit”).value);
if(上限<下限){
警报(“上限比下限小!”)
返回false;//退出函数
}否则{
**用上限和下限做点什么**
}
请试试这个

函数compair()
{
调试器;
var UpperLimit=document.getElementById(“UpperLimit”).value;
var LowerLimit=document.getElementById(“LowerLimit”).value;
var isvalid=true;
设regex=newregexp(/[^0-9]/,'g');
if(上限匹配(正则表达式)){
警报(“上限必须是有效数字”);
isvalid=false;
}
if(LowerLimit.match(正则表达式)){
警报(“LowerLimit必须是有效数字”);
isvalid=false;
}
如果(有效)
{
if(parseInt(上限)

下限:m³
上限:m³

如果您想在javascript中解析为数字,请使用
number(…)
而不是
parseInt
。非常感谢!我想JS会知道输入是一个数字。我猜错了@不客气。如果此答案对您有帮助,请使用绿色勾号将其标记为正确答案。这有助于前来访问此问题的其他人更快地找到正确答案。我本想早点做,但我需要等待10分钟才能标记;)再次感谢你!应该使用parseInt或parseFloat,而不是Number类的实例化器。@BRO_THOM我没有看到新的关键字,因此上限和下限的类型将是一个数字而不是一个对象,因此我认为使用Number函数没有问题。如果不清楚,我建议大家阅读。非常感谢!我想JS会知道输入是一个数字。我猜错了!
var UpperLimit = Number( document.getElementById("UpperLimit").value);  
var LowerLimit = Number( document.getElementById("LowerLimit").value);  

if (UpperLimit < LowerLimit){
alert("Upper Limit is smaller as the Lower Limit!")
return false;   //Exit Function
} else {

**do something with the Upper and Lower Limit**

}