一看就懂的javascript全等於與等於

Javascript只有六個假值(用在條件if的判斷)

clipboard.png

全等於

類型不一樣,返回false
類型相同,則spa

clipboard.png

等於

類型相同:同上===code

類型不一樣:嘗試類型轉換==【不是真值和假值的比較】對象

null == undefined
number == string(stirng轉number)
boolean == ? (均轉換爲number)
object == number | string (將對象轉換爲基本類型)
其餘:false

false只有和false,0,' ',[ ]比較爲真ip

clipboard.png

0只有和0,false,‘ ’,還有[ ]比較爲真值字符串

clipboard.png

' ' 只有和0 , ‘ ’ ,false ,[]比較爲真string

clipboard.png

[]和0,‘’,false比較爲真值,與[]不是!!it

clipboard.png

null 與undefinedclass

clipboard.png

總結:

本身畫的比較醜cli

clipboard.png

clipboard.png

1、首先看雙等號先後有沒有NaN,若是存在NaN,一概返回false。object

clipboard.png

2、再看雙等號先後有沒有布爾,有布爾就將布爾轉換爲數字。(false是0,true是1)
3、接着看雙等號先後有沒有字符串, 有三種狀況:
一、對方是對象,對象使用toString()或者valueOf()進行轉換;
二、對方是數字,字符串轉數字;(前面已經舉例)
三、對方是字符串,直接比較;
四、其餘返回false
4、若是是數字,對方是對象,對象取valueOf()或者toString()進行比較, 其餘一概返回false5、null, undefined不會進行類型轉換, 但它們倆相等

相關文章
相關標籤/搜索