TypeScript三個等號和兩個等號的區別

2021-09-20 10:22:37 字數 618 閱讀 4794

1.===:三個等號我們稱為等同符,當等號兩邊的值為相同型別的時候,直接比較等號兩邊的值,值相同則返回true,若等號兩邊的值型別不同時直接返回false。

例:100===「100」   //返回false

abc===「abc」 //返回false

『abc』===「abc」 //返回true

nan===nan //返回false

false===false //返回true

2.==:兩個等號我們稱為等值符,當等號兩邊的值為相同型別時比較值是否相同,型別不同時會發生型別的自動轉換,轉換為相同的型別後再作比較。

型別轉換規則:

1)如果等號兩邊是boolean、string、number三者中任意兩者進行比較時,優先轉換為數字進行比較。

2)如果等號兩邊出現了null或undefined,null和undefined除了和自己相等,就彼此相等

例:100==「100」 //返回true

1==true //返回true

「1」==「01」 //返回false,此處等號兩邊值得型別相同,不要再轉換型別了!!

nan==nan //返回false,nan和所有值包括自己都不相等。

javascript中兩個等號和三個等號的區別

首先,equality 等同,identity 恒等。兩邊值型別不同的時候,要先進行型別轉換,再比較。不做型別轉換,型別不同的一定不等。下面分別說明 先說 這個比較簡單。下面的規則用來判斷兩個值是否 相等 1 如果型別不同,就 不相等 2 如果兩個都是數值,並且是同乙個值,那麼 相等 例外 的是,如...

關於js中「兩個等號」和「三個等號」

學習js不久,今天突然發現了乙個以前學習的時候未注意到的問題,就是 兩個等號 和 三個等號 的問題。例如 var a 9 var b 9 alert a b alert a b 此時alert的值肯定是true,不管是全等還是恒等,原因應該也很簡單吧,只是定義兩個變數,並賦值,是相同型別,並且值也相...

三個等號和二個等號的區別是

和 的區別 在比較時等號左右兩側資料型別不同時會先轉成相同資料型別,再比較 是相對比較 是絕對比較 1.1 字串 數字 字串轉換成數字 console.log 1 1 true 1.2 布林值 數字 布林值轉成數字 console.log 1 true true 1.3 布林值 字串 布林值轉數字,...