在javascript中,var定义的变量默认是string类型,也就是字符串。在比较两个数字大小的时候默认比较的是两个字符串,比如,在比较10和2时,按数字做比较10是比2大,可是按默认的字符串比较时,第一位的1和第一位的2比较是2大,就会出现2比10大的现象。

所以在javascript中比较两个数字的大小时为了安全起见,我们需要转换为int类型再进行比较,具体方法如下:

1.使用parseInt


var a=$("#a").val();
var b=$("#b").val();
if(parseInt(a)<parseInt(b)){
	console.log('a小于b')
}else{
	console.log('a大于或等于b')
}

2.使用eval


var a=$("#a").val();
var b=$("#b").val();
if(eval(a)<eval(b)){
	console.log('a小于b')
}else{
	console.log('a大于或等于b')
}

3.使用数学运算


var a=$("#a").val();
var b=$("#b").val();
if((a-0)<eval(b-0)){
	console.log('a小于b')
}else{
	console.log('a大于或等于b')
}