js中对数字进行比较大小踩过的坑

前几天工作中遇到了同事写的一段代码,在js中对数字进行比较大小,部分代码如下:

刚开始时候我也觉着这段代码没问题,后来发现代码在走到“跳转”的判断里面时会出问题,

出的问题是:pageInput.val() > totalNum 转换成当时的业务场景就是  =====>     9>81,而且结果还是true

看到这个结果瞬间就炸了,怎么可能!但是事实就是这样,后来又冷静的看了一眼代码,恍然大悟!字符串类型的数据怎么能够直接通过比较运算符计算呢!所以接下来的事情就简单了,修改吧!

这样最后就OK啦,一切顺利!

经过一番验证,最终发现var类型的数据,在只讨论字符型的数据进行比较大小时,是按照字符顺序逐位进行比较其字符对应ASCII值的。该观点仅代表个人观点,仅供参考验证!如有不妥,多谢指正。

猜你喜欢

转载自blog.csdn.net/qq_39957294/article/details/84143021