javascript 中不区分大小写的字符串比较

Case insensitive string comparison in javascript

有人可以解释为什么会这样吗?

console.log('AB_CD' > 'AB_C_D'); //false
console.log('ab_cd' > 'ab_c_d'); //true

使用字符代码比较字符串,您可以阅读this tutorial

了解更多信息

在第一次比较('AB_CD' > 'AB_C_D')中,D_的字符代码分别是6895,这就解释了为什么表达式的计算结果为 false.

A: 65; A: 65
B: 66; B: 66
_: 95; _: 95
C: 67; C: 67
D: 68; _: 95

第二次比较('ab_cd' > 'ab_c_d'),d_的字符编码分别为10095,这就解释了为什么表达式计算为 true.

a: 97;  a: 97
b: 98;  b: 98
_: 95;  _: 95
c: 99;  c: 99
d: 100; _: 95