1. 程式人生 > >JavaScript學習總結(五)——Javascript中==和===的區別

JavaScript學習總結(五)——Javascript中==和===的區別

一、JavaScript"=="的作用

  1. 當==兩邊的內容是字串時,則比較字串的內容是否相等。
  2. 當==兩邊的內容是數字時,則比較數字的大小是否相等。
  3. 當==兩邊的內容是物件或者是物件的函式屬性時,則比較記憶體地址是否相等

二、==和===的區別

  ==用於一般比較,===用於嚴格比較,==在比較的時候可以轉換資料型別,===嚴格比較,只要型別不匹配就返回flase

舉例說明:

1  <script type="text/javascript">
2     alert("\"1\"==true的結果是:"+("1"==true));
3     alert("\"1\"===true的結果是:"+("1"===true
)); 4 alert("\"1\"==1的結果是:"+("1"==1)); 5 alert("\"1\"===1的結果是:"+("1"===1)); 6 </script>

  "1" == true型別不同,"=="將先做型別轉換,把true轉換為1,即為 "1" == 1;此時,型別仍不同,繼續進行型別轉換,把"1"轉換為1,即為 1 == 1;此時,"==" 左右兩邊的型別都為數值型,比較成功!

  "1" === true 左側為字元型,右側為bool布林型,左右兩側型別不同,結果為false;

  "1" === 1 左側為字元型,右側為int數值型,左右兩側型別不同,結果為false;

執行結果:

總結:

  ==和===的區別:"==" 只要求值相等; "===" 要求值和型別都相等

  文中如果有寫得不對的地方,希望朋友們指正,感激不盡!