关系操作符
小于(
<
)
大于(>
)
小于等于(<=
)
大于等于(>=
)
这几个操作符都会返回一个布尔值。
var result1 = 5 > 3; //true
var result2 = 5 < 3; //false
- 如果两个数都是数值,则执行数值比较;
- 如果两个操作数都是字符串,则比较两个字符串对应的字符编码值。( 大写字母字符编码小于小写字母字符编码)
- 如果一个操作数是数值,则将另一个操作数转换为一个数值,然后执行数值比较。
- 如果一个操作数是对象,则调用这个对象的valueOf()方法,用得到的结果安装前面的规则执行比较。如果对象没有valueOf()方法,则调用toString()方法,并用得到的结果安装前面的规则执行比较。
- 如果一个操作数是布尔值,在先将其转换为数值,然后再执行比较。
var result = "Brick" < "alphabet"; //true
var result = "Brick".toLowerCase() < "alphabet".toLowerCase(); //false
var result = "23" < "3"; //true
var result = "23" < 3; //false
var result = "a" < 3; //false, "a"被转换成NaN
var result1 = NaN < 3; //false
var result2 = NaN > 3; //false