"A"的码位值65
"a" 的码位值97
"b"的码位值为98
"你"的码位值为20320
后者比前者大
在JavaScript中,字符串的比较,是字符按从左到右一一对应比较的。如:
"hello" >"hi"
先对首字母"h"进行比较。因为相等,所以再对下一位进行比较。
而单个字符的比较,实际上是ASCII码的比较。
字母"e"的ASCII码对应编号是101,而"i"的对应编号是105,所以 "e" >"i" 会返回false。
对上面字符串的比较,可以拆分理解为:
"h" >"h" &&
"e" >"i" &&
"l" >"" &&
"l" >"" &&
"o" >""
因此,
"hello" >"hi" // return false
字符串的比较,是对两字符串相同位置字符的Unicode编码逐一比较。比如上面的字符串time1和time2,前面的几个字符都是相同的,当在"02"与"01"中"2"和"1"开始不同,由于"2"的Unicode编码为50,而"1"的Unicode编码值为49,所以time1比time2要大。至于如何取得字符串某个字符的Unicode值,可以使用函数charCodeAt(index),比如获得time1的第7个字符的Unicode值:time1.charCodeAt(6)
注:索引值index由0开始而不是1开始哦,所以字符串第7个字符的索引为6