js相等的判断
js全等的判断
result display
js相等的判断
result display
summery==运算的规则:
undefined == null,结果是true。且它俩与所有其他值比较的结果都是false。
String == Boolean,需要两个操作数同时转为Number。
String/Boolean == Number,需要String/Boolean转为Number。
Object == Primitive,需要Object转为Primitive(具体通过valueOf和toString方法)。
==compare
"0" == null;
"0" == undefined;
"0" == false; //true
"0" == NaN;
"0" == 0; //true
"0" == "";
false == null;
false == undefined;
false == NaN;
false == 0; //true
false == ""; //true
false == [ ]; //true
false == { };
"" == null;
"" == undefined;
"" == NaN;
"" == 0; // true
"" == [ ]; //true
"" == { };
0 == null;
0 == undefined;
0 == NaN;
0 == [ ]; //true
0 == { };
观察上面可以知,从 false
、0
、""
、[ ]
4个值中任选两个都是相等的。
等号比较时,false和true分别可以转化为0、1