JavaScript兩個等號和三個等號區別
在JavaScript程式碼經常看到三個等號和兩個等號的使用,下面介紹一下它們兩者的區別。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(0==""); console.log(0==false); console.log(""==false);
再來看一段程式碼例項:
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(0===""); console.log(0===false); console.log(""===false);
上面你的程式碼演示了兩個運算子的,下面介紹一下它們兩者的區別。
三個等號全等運算子:
既然是全等運算子,那麼兩個運算數必須完全一樣才能夠相等,具體比較規則如下:
1.如果兩個操作是值型別,那麼兩個運算元必須完全相等才會相等。
2.如果是引用型別,兩個運算元必須指向同一個物件才會相等。
兩個等號運算子:
這個運算子比較博愛一些,在比較的時候如果兩個運算元的型別不同,會進行型別轉換,具體規則如下:
1.如果是資料型別相同的值型別,那麼比較規則和全等運算子相同。
2.如果兩個運算元型別相同,那麼它們也是有可能相同的:
(1).如果一個是null、一個是undefined,那麼兩個是相同的。
(2).如果一個是字串,一個是數值,把字串轉換成數值再進行比較。
(3).如果任一值是true,把它轉換成1再比較,如果任一值是false,把它轉換成0再比較。
(4).如果一個是物件,另一個是數值或字串,把物件轉換成基礎型別的值再比較。物件轉換成基礎型別,利用它的toString或者valueOf方法。
相關文章
- JavaScript 三個等號 === 全等運算子JavaScript
- JavaScript兩個歎號(!!)JavaScript
- JavaScript == 等號運算子JavaScript
- JavaScript 等號 = 賦值運算子JavaScript賦值
- Python 函式中引數前面一個和兩個星號(**)的區別Python函式
- 蘋果企業賬號和個人賬號區別蘋果
- JavaScript >>> 三個大於號無符號右移運算子JavaScript符號
- 等保二級和等保三級的三大區別講解
- C#基礎之==(雙等於號)與equals()區別C#
- 什麼是等級保護?一級等保和三級等保有什麼區別?
- 等級保護分為幾個等級?一級、二級、三級有什麼區別?
- 網路安全中二級等保和三級等保有什麼區別?
- latex 中乘號、恆等號、花括號的寫法
- JavaScript數字每隔三位加一個逗號JavaScript
- markdown公式以等號對其公式
- 等保1.0和2.0分別是什麼?兩者有什麼區別?
- Oracle中單引號和雙引號的區別Oracle
- 賦值運算子和+號的用法(兩個練習)賦值
- 【等保小知識】等保與關保兩者之間有啥區別?
- 海外代理HTTP和ADSL撥號有什麼區別?哪個更方便?HTTP
- immer 和useImmer兩個庫有啥區別
- pycharm 取消空格,逗號 等符號的自動補全PyCharm符號
- latex 中乘號、恆等好、花括號的寫法
- 【等保小知識】等保與分保的三大區別彙總分析
- 【網路安全小知識】二級等保和三級等保之間的區別有哪些?
- 「javaScript-每三位插入一個逗號實現方式」JavaScript
- Javascripit型別轉換比較那點事兒,雙等號(==)Java型別
- emoji等表情符號存mysql的方法符號MySql
- firefox和IE在一個逗號上的差別Firefox
- SQL 兩個冒號連用什麼意思?SQL
- Bold訊號與fNIRS訊號的區別
- [譯] 深度學習能力的三個等級深度學習
- 新惡意軟體可盜取Steam、Epic等多個遊戲平臺賬號遊戲
- 《征途2》週年慶典新區送“大哥極品賬號”等福利!
- 【等保小知識】等保一級二級三級哪個要求更高?
- Linux Shell 單引號 雙引號 使用區別Linux
- 同一臺電腦配置兩個git賬號Git
- shell中定義變數用雙引號和單引號以及不用引號的區別變數