javascript什么意思 js里==和===有什么區(qū)別?
js里==和===有什么區(qū)別?==:運(yùn)算符稱為相等,用于檢測(cè)兩個(gè)操作數(shù)是否相等。這里,相等的定義非常松散,允許類型轉(zhuǎn)換==:用于檢測(cè)兩個(gè)操作數(shù)是否嚴(yán)格相等1。對(duì)于字符串、數(shù)字等基本類型,==和===對(duì)
js里==和===有什么區(qū)別?
==:運(yùn)算符稱為相等,用于檢測(cè)兩個(gè)操作數(shù)是否相等。這里,相等的定義非常松散,允許類型轉(zhuǎn)換==:用于檢測(cè)兩個(gè)操作數(shù)是否嚴(yán)格相等
1。對(duì)于字符串、數(shù)字等基本類型,==和===對(duì)于不同類型之間的比較是不同的,==“值轉(zhuǎn)換為同一類型”用于查看“值”是否相等,==如果類型不同,則結(jié)果不是同一類型的比較,直接進(jìn)行“值”比較,結(jié)果是相同的一樣
2。對(duì)于高級(jí)類型,如數(shù)組和對(duì)象,==和===沒有區(qū)別
3?;绢愋秃透呒?jí)類型之間存在差異,==和===對(duì)于==不同,請(qǐng)將高級(jí)類型轉(zhuǎn)換為基本類型,然后比較值。因?yàn)轭愋筒煌?==結(jié)果是假的
首先,==是相等的,===I是相同的。
其次,當(dāng)兩邊的值類型不同時(shí),應(yīng)先進(jìn)行類型轉(zhuǎn)換,再進(jìn)行比較。
===沒有類型轉(zhuǎn)換,不同的類型不能相等。
簡(jiǎn)而言之,==先轉(zhuǎn)換類型然后比較,==先判斷類型。如果不是同一類型,則直接為false。
最后,做一個(gè)比較
先說===,判斷兩個(gè)值===是否相等:
1。如果類型不同,則[not equal
]2。如果兩者都是數(shù)值且值相同,則[相等];(!例外情況是,如果其中至少有一個(gè)是Nan,那么[不相等]。(判斷值是否為Nan,只能用isnan()判斷)]3。如果兩者都是字符串,并且每個(gè)位置的字符相同,則為[相等];否則為[不相等]。
如果兩個(gè)值屬于同一類型,請(qǐng)進(jìn)行比較。
2. 如果兩個(gè)值的類型不同,則它們可能相等。