我的代码中有一个错误,我在比较字符串而不是数字。
我在做“ 100” <“ 5”,并且返回true。
为什么javascript认为“ 100”小于“ 5”?
答案 0 :(得分:5)
将<
与字符串一起使用时,将比较字符串的每个索引的code points。 1的代码点是49,而5的代码点是53,所以'100' < '5'
,因为49 <53。
console.log(
'1'.charCodeAt(),
'5'.charCodeAt()
);
类似地,'A' < 'a'
因为A
(65)的代码点小于a
(97)的代码点。