== 相等運算符 會對左右兩邊的值進行類型轉換
=== 全等運算符 則不會進行類型轉換
eg:
3==3 true number 3
3===3 true number 3
3=="3" true number3 == string3---->number3
3=== "3" false number 3 string 3
true == 1; true 類型轉換 boolean=>1(number)
false ==0 true 同上
true === 1 false boolean number
false ===0 false boolean number
‘’ ==0 true 0表示沒有,空
‘ ’ == 0 true
null == undefined true null 表示空 undefined表示未賦值 他們只能等於他們本身
null ==0 false
undefined==’‘ false
'false' == false; false
NaN == NaN; false NaN " not a number " 表示一個未定義或者不可表示的值,不等於本身 typeof NaN =number
NaN ==false; false
NaN ===false; false
var a = {}
var b = {} a,b 指向的是不同的地址
var c = a a,c 引用的是同一個地址的值
a == b false 對象爲引用類型,會比較地址
a === b false
a == c true
a === c true