js中==與===使用場(chǎng)景

絕大多數(shù)場(chǎng)合應(yīng)該使用===,只有檢測(cè)null/undefined的時(shí)候可以使用x==null,因?yàn)橐话阄覀儾粎^(qū)分null和undefined,即將x=null作為x===null || x===undefined的縮寫。
  ==的比較看似比較方便,比如1==‘1’,但是會(huì)埋下隱患,引入隱蔽的錯(cuò)誤,最常見的就是讓字符串和數(shù)值相加會(huì)先將數(shù)值轉(zhuǎn)化為字符串,然后進(jìn)行字符串連接,例如

if(x==10){
  x+=5;
  ...
}

如果傳入?yún)?shù)為‘10’的話,x的結(jié)果會(huì)變成‘105’,可能會(huì)引入隱蔽的錯(cuò)誤。
  總之,對(duì)于大型編程來說,==這種小便利無法與其帶來的風(fēng)險(xiǎn)相比,而且會(huì)優(yōu)先轉(zhuǎn)化為字符串進(jìn)行比較,結(jié)果可能會(huì)出乎意料之外。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 第一章: JS簡(jiǎn)介 從當(dāng)初簡(jiǎn)單的語言,變成了現(xiàn)在能夠處理復(fù)雜計(jì)算和交互,擁有閉包、匿名函數(shù), 甚至元編程等...
    LaBaby_閱讀 1,703評(píng)論 0 6
  • 第5章 引用類型(返回首頁) 本章內(nèi)容 使用對(duì)象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,270評(píng)論 0 4
  • 一天都 頭痛,昨天太晚睡的緣故,摸索出自己的作息時(shí)間應(yīng)在12點(diǎn)半之前,今天的事情太多,寶寶吐奶,路由器損壞,...
    北冥有魚_其名為鯤閱讀 176評(píng)論 0 1
  • 她長(zhǎng)得很漂亮,有一雙大眼睛,笑起來很好看。而他,那時(shí)剛剛參軍不久,從部隊(duì)回老家探親,經(jīng)朋友介紹,他們相遇,說的浪漫...
    劉海峰6閱讀 280評(píng)論 2 1
  • 作者 | 畢淑敏 教養(yǎng)是個(gè)高頻詞。時(shí)下,如果說某人沒教養(yǎng),就是大批評(píng)大貶義了。如果說一個(gè)女人沒教養(yǎng),簡(jiǎn)直就如同說她...
    萬事從容閱讀 846評(píng)論 0 5