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
得出結論兩個都是字符串類型的值,比較大小是比較其字符編碼。
入職不久的小前端從今以後開始自己的技術分享之旅,歡迎建議和批評。