今天做一个页面,统计报表,发现一点问题,两个数量比较的时候结果不对:
maxNum = 98;// 0, int
totalNum = report.checkrecordNum;// 256, string
if(totalNum > maxNum)
{
...
}
//结果是 maxNum > totalNum, 也就是98 > 256
98怎么会比256大呢?
原来是变量类型的问题,一个是整型,一个是字符型,这里javascript 默认进行了字符串的比较,所以98会大于256。
对于这种要进行数字比较,但数字的来源可能是字符串的情况,要进行一个类型转换:
if(parseInt(totalNum) > maxNum)
转换为相同的类型,问题解决。