var a = '1'; // 编码10进制 49
var b = '2' // 编码10进制 50
console.log( a < b) // true
var a = '123'; // 编码10进制 49 50 51
var b = '2' // 编码10进制 50
console.log(a < b) // true
字符串类型的数字比较大小是从第一位开始比较其在字符编码中对应的数值大小,相等则继续比较第二位,不相等就是数值大的为大。
那么汉字是否一样吗
var a = '你'; // 编码10进制 14990752
var b = '他' // 编码10进制 14990230
console.log(a < b) // false
发现汉字和数字一样,那么这样呢
var a = '[]'; // 编码10进制 91 93
var b = '{}' // 编码10进制 123 125
console.log(a < b) // true
得出结论两个都是字符串类型的值,比较大小是比较其字符编码。
入职不久的小前端从今以后开始自己的技术分享之旅,欢迎建议和批评。