== 与===的区别

 //==判断相等,会进行隐式类型转换,
        //===判断全等,判断时会考虑类型。
        true = 1;    // true
        false = 0;    //true
        true ===1;  // false;
        false === 0; // false;
        
        '' ==0;   //true
        ' '  ==0; //true
        null = undefined; // ture,null与undefind除了自身以外不等于任何的值;
        null == 0;      //  false
        undefined == '';  // false
        // == 会将字符串转换为数值
        'false'  == false;  // false   'false'没有进行转换,false转换为0;
        NaN == NaN;          //false
        NaN == false;      //false
        NaN === false;   // false
        
        //  栈堆原理,对象看似相等,
        //  但是由于存贮的堆不同,所以两个堆不同。
        var  a = {}, b = {}, c= a ;
        a == b ;   // false
        a === b;  // false
        a == c;   // true
        a === c;  // true
原文地址:https://www.cnblogs.com/dy0302/p/13424560.html