经验之谈——js中null、空字符串、undefined等特殊值比较

空字符串与数字比较,空字符串会转换为0,null转换为0,false转换为0,true转换为1,true>false;undefined转换为NaN

1=='1'    为true

数字对象引用类型比较由数字对象的值决定,两个字符串比较时,会使用字符串的localeCompare()方法进行比较,字符串为数字类型字符串时与数字比较, 将转换成数字比较,将字符串转换得到的是NaN时怎么比较都为false,NaN不等于它本身;

undefined会转换为false,空字符 串为false;Null为false;null==null为true;null===undefined为false;null==undefined为true;

-0 === +0    //true

NaN == NaN    //false

你可能感兴趣的:(经验之谈)