JS——关系操作符

1、关系操作符

规则:若两个操作数是数值,则执行数值比较;

   若两个操作数都是字符串,则比较对应的字符编码值;

   如果一个操作数是数值,则将另一个转换为数值,再执行数值比较;

     若一个操作数是对象,则调用这个对象的valueOf()方法,再按照前面的规则进行比较。

   若一个操作数是布尔值,则先将其转换为数值,再执行比较。

2、相等操作符

(1)相等和不相等(==/!=) ——先转换再比较

  null和undefined是相等的;

  要比较相等性之前,不能将null和undefined转换成其他任何值;

  若一个操作数是NaN,则相等操作符返回false,而不相等操作符返回true。即使两个操作数都是NaN,相等操作符照样返回false;

  若两个操作数都是对象,则比较他们是不是同一个对象。

(2)全等和不全等(===/!==)——仅比较不转换

  null == undefined    返回true;

  null === undefined   返回false;

原文地址:https://www.cnblogs.com/shuqicui/p/2017-3-28-1.html