出错情景:
今天在做JS里对输入框结果值是否为0作判断时,总是得不到想象的结果,于是查之。
javascript语言
当我们在JS中判断两个数值大小时,比如<script language="javascript">
if(2>100)
{
alert('true');
}else{
alert("false");
}
</script>
上述JS是得不到我们想要的效果的,因为JS是弱类型语言,是没有int类型的,它默认把我们的数字类型当成字符串了,我们可以有以下两种解决办法
1.将两个数值相减,判断相减后的值
if((2-100)>0)
{
alert('true');
}else{
alert("false");
}
2.使用eval()函数,这个函数可以把一个字符串当作一个JavaScript表达式一样去执行它
if(eval(2)>eval(100))
{
alert('true');
}else{
alert("false");
}
</script>
用法demo:
alert(eval("4+9")); 弹出13
alert("4+9"); 弹出"4+9"