js == 與 === 以及不同類型的值的比較

1、對(duì)于string,number等基礎(chǔ)類型,==和===是有區(qū)別的
????a、不同類型間比較,==之比較“轉(zhuǎn)化成同一類型后的值”看“值”是否相等,===如果類型不同,其結(jié)果就是不等
????b、同類型比較,直接進(jìn)行“值”比較,兩者結(jié)果一樣

2、對(duì)于Array,Object等引用類型,==和===是沒有區(qū)別的
????進(jìn)行“指針地址”比較

3、基礎(chǔ)類型與引用類型,==和===是有區(qū)別的
????a、對(duì)于==,將引用類型轉(zhuǎn)化為基礎(chǔ)類型,進(jìn)行“值”比較
????b、因?yàn)轭愋筒煌?==結(jié)果為false

"" == ""          //true    // 基礎(chǔ)類型比較

[] == []                //false   //引用類型比較  []相當(dāng)于new Array()   兩個(gè)Array指向的地址是不一樣的

new String()  == new String()     //false

"" == 0                 //true  
"" == []                 //true
[] == 0                  //true

{} == 0                  //Uncaught SyntaxError: Unexpected token ==
0 =={}                    //false
new Object() == 0        //false
{} =={}                     //false
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容