2018-11-13

if 的判断

类型 结果
undefined false
null false
boolean 直接判断
number +0,-0,nan为false,其他为true
string 空字符串为fales,其他为true
object true

例子:

if ("hello") {
console.log("hello")
} 输出 hello
if ("") {
console,log('empty')
} 空字符串结果为false,不输出
if (' ') {
console.log('a')
} 空白字符为true,所以输出a
if ([0]) {
console.log('ayyay')
} 数组的判断结果为true,所以输出ayyay
if ([]) {
console.log('aj')
} 空数组的判断结果为true,所以输出aj
if (-0.00) {
console.log('nihao')
} -0为false,所以不输出

a == b 的判断

将两边转换成数值进行判断

类型 转换后的结果
undefined NaN
null 0
boolean true→1,false→0
string "abc"→nan,"123"→123,"abs33"→nan

例子:

"" == 0 得到 true
" " == 1 得到 false
"" == false 得到true
!" " == true 得到 false
(先判断空白字符取反,转化为布尔类型,得到false)
"hello" == true 得到 false
("hello"→nan→0 == 1得到 false)
"0" == true 得到 false
"00" == false 得到 true
(00=0)
undefined == null 得到 true
true == {} 得到 fales
(空对象没有value和tostying,即为[object object] )
[] == true 得到 false

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容