JS中的变量或对象在做比较时,会先转型,然后再进行比较值或类型。
双等号只会判断两边的变量或对象的值是否相等,先会转化值,只要值相等,则会返回真。
三等号会判断类型和值,如果两边的变量或对象的类型和值都相等,则会返回真。
例子如下:
var check123 = function(){ var t1 = "1"; var t2 = 1; alert(t1==t2); alert(t1===t2); }; check123();
显示:
true--值相等, 先把"1"转换成1, 比较1 ==1, 相等。
false--类型不等。
var check123 = function(){ var t1 = true; var t2 = 1; alert(t1==t2); alert(t1===t2); }; check123();
显示:
true--值相等, true会先转换成数值1, 比较1==1, 相等。
false--类型不等。