**==:**兩個等號是先把等號兩邊的變數轉化成相同的型別,如果轉換型別後的結果是相等的,就認為相等。
$str
= 「abc」;if(
0==$str
)else
結果為真
**==**執行過程:
1.執行 == 時要求運算子兩邊的資料型別必須一致,所以等號右邊的字串被強制轉換為了整型0,返回了真。
分割線**===:**三個等號是先判斷兩邊變數的資料型別,如果資料型別相同,再去判斷兩邊的值,如果值相等,那麼為真。
$str
= 「abc」;if(
0===
$str
)else
結果為假
**===**執行過程:
1.判斷全等於操作符兩邊的資料型別是否相同 如果不相同,則返回false
2.判斷全等於操作符兩邊的值是否相等,如果不相等,則返回false
總結:三個等號是包括變數值與型別完全相等,而兩個等號只是比較兩個數的值是否相等。
兩個等號與三個等號的區別
首先,equality 等同,identity 恒等。兩邊值型別不同的時候,要先進行型別轉換,再比較。不做型別轉換,型別不同的一定不等。下面分別說明 先說 這個比較簡單。下面的規則用來判斷兩個值是否 相等 1 如果型別不同,就 不相等 2 如果兩個都是數值,並且是同乙個值,那麼 相等 例外 的是,如...
TypeScript三個等號和兩個等號的區別
1.三個等號我們稱為等同符,當等號兩邊的值為相同型別的時候,直接比較等號兩邊的值,值相同則返回true,若等號兩邊的值型別不同時直接返回false。例 100 100 返回false abc abc 返回false abc abc 返回true nan nan 返回false false false...
Js中兩個等號 和三個等號 的區別
表示 equality 等同的意思,使用兩個等號時,如果兩邊值的型別不同的時候,是要先進行型別轉換後,才能做比較 表示 identity 恒等的意思,使用三個等號時,是不需要做型別轉換的,如果兩邊值的型別不同,就表示一定是不等的。簡單說明使用三個等號 的判斷規則 1 如果型別不同,就一定不相等。2 ...