js中不同類型作比較的規律(布爾運算)?

js中不同類型作比較的規律(布爾運算)

方法/步驟

不同類型間的比較,規律如下類型類型規律其它說明對象對象比較是不是同一個內存地址對象字符串對象先轉化為字符串,然後做比較對象布爾類型兩邊都要先轉為數字(false是0,true是1)。是對象類型先隱式調用toString方法,然後再Number()alert([]==false);alert([]==0)alert([1]==1);alert([1]==true)alert([2]==true)對象數字對象要轉為數字,再進行比較(對象先隱式調用toString方法轉化為字符串,然後再把這個字符串輪化為數字,相當於把這個字符串放到Number這個方法中)數字布爾是進行的數字的比較數字字符串把字符串轉化為數,再比較布爾把兩邊都要轉化為數字再進行比較nullundefinedtruenull,undefined和其它類型null和undefined和其它類型比較都是false(這兩個對象沒toString方法)alert(null==false)alert(null==0)alert(null=="");;自身做布爾運算的時候的轉換類型規律示例object都是true alert(!![])number只是0和NaN是falsealert(!!0);string只有空字符串是false(不是空格字符串)alert(!!"");function都是turenull,undefined都是false

相關問題答案