项目总结:js字符串的数字大小比较

今天项目遇到一个问题,js的字符串想要进行数字大小的比较,这里看似很简单,实际上有一个小陷阱在里面,写出来记录一下。

例如

数字字符串比较如下:

  1. = '10000000'
  2. = '5000000'

a>b输出false a-b>0输出true
为什么是这个结果

js中的隐式转换

这是JavaScript中隐式转换的关系,首先在比较的时候,二者是按照string的形式进行比较的,那么比较第一位的时候,1 < 5,直接返回false,而 a - b会把两个数转成number类型进行比较,转换完之后输出就是true。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章