当关系操作符的操作数使用了非数值时,也要进行数据转换,以下就是相应的规则:
1.如果两个操作数都是数值,则执行数值比较;
2.如果两个操作数都是字符串,则比较两个字符串对应的字符编码值;
3.如果一个操作数是数值,则将另一个操作数转换为一个数值,然后执行数值比较,(null可以转换为0);
4.如果一个操作数是对象,则调用这个对象的valueOf()方法,用得到的结果按照前面的规则执行比较。如果对象没有valueOf()方法,则调用toString()方法,并用得到的结果根据前面的规则执行比较。
5.如果一个操作数是布尔值,则现将其转换为数值,然后再执行比较。
6.任何一个操作数与NaN或undefined比较时,结果都是false。