在js中 “==” 是相等比较符,会隐式转换
“===” 是全等比较符
‘==’在比较的时候先比较类型,类型不一致的时候会进行Number转换,转换完成后再比较值是否想等,相等返回 ‘true’,不相等返回‘false’。
例:
'' == 0 // true
0 == '0' // true
1 == '1' // true
1 == true // true
0 == false // true
null == undefined // true
‘===’在比较的时候先比较类型,类型不一样时直接返回false,类型一致再比较值,值相等返回true,不相等返回false。
例:
'' === 0 // false
0 === '0' // false
1 === '1' // false
1 === true // false
0 === false // false
null === undefined // false
在js中明显‘===’比‘==’要更严谨且不会产生副作用,所以在进行比较是要使用‘===’。
更多详细细节请点击链接