比较运算符
比较运算符的规则如下:
1、如果两边都是数值,那么就按数值类型进行比较。
2、如果两边都是字符串,那么就按字符串的字典顺序进行比较。
3、如果一边是数值,另一边是字符串。那么就把字符串转换为数值,再与另一个数值进行比较。如果字符串在转换为数值的过程中得到NaN,那么无论再与那一个数值比较,得以的结果都是false。
"a" < 12; // false "a" > 12; // false "a" == 12; // false "12" > 10; // true
4、如果出现对象,那么就尝试先把对象转换为数值比较,如果不能转换为数值,那么就转换成字符串进行比较。
var obj = {}; obj > 12; // false obj < 12; // false obj == 12; // false var date = new Date(); data > 12; // true
5、如果两边的运算数不能转换为数值或字符串,那么结果一定为false。
var obj = {}; var test = function () {}; obj > test; // false obj < test; // false obj == test; // false
6、其中任意一个运算数为NaN,那么结果一定为false。