JavaScript语言中数字(Number)和字符串(String)是如何进行大小比较的呢?
东方不败
字符串与数字进行比较时,字符串会自动转成数字后再进行比较。
空的字符串会转为0,无法转换成数字的字符串则会成为NaN,因此数字和无法转换成数字的字符串进行比较,结果经常为false。
示例如下:
419 < "666" 结果为true
419 < "666.66" 结果为true
"666" < "666.66" 结果为true
666 == "666" 结果为true
419 > "" 结果为true(空字符串会转为0再比较)
以下示例都是因为字符串(String)属于不能转换成数字(Number)而结果为false:
666 < "999。9" 结果为false
666 == "6 6 6" 结果为false
666 > "反清复明" 结果为false