這次帶給大家JS的隱性類型轉換詳解,JS的隱性類型轉換的注意事項有哪些,下面就是實戰案例,一起來看一下。
這裡說的隱性型別轉換,是==引起的轉換。
如果存在NaN,一律回傳false
#再看有沒有布爾,有布爾就將布爾轉換為數字
接著看有沒有字串, 有三種情況,對方是物件,物件使用toString轉換;對方是數字,字串轉數字;對方是字串,直接比較;其他返回false
如果是數字,對方是對象,對象取valueOf進行比較, 其他一律返回false
null, undefined不會進行類型轉換, 但它們兩個相等
這個順序一定要死記,這是面試時經常問到的。
下面是一些雜題,自己做做
0 == undefined 1 == true 2 == {valueOf: function(){return 2}} NaN == NaN 8 == undefined 1 == undefined null == {toString: function(){return 2}} 0 == null null == 1 { toString:function(){ return 1 } , valueOf:function(){ return [] }} == 1
#相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是JS的隱性類型轉換詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!