java script 中一个感叹号、两个感叹号、三个感叹号,!、!!、!!!区别

推理假设

“空”=undefined = null= 0 =false
if(e!=null&&e!=undefined&&e!=''&&e!=0) 很好理解,判断一个值是否为非空**(变量有值才通过)**

if(e) 判断变量是否“非空”,“非空”就通过。

if(!e) 判断变量是否“为空”,“为空”就通过。 ( if(e) 取反 )

if(!!e) 等价于 if(!e) 取反

if(!!!e) 等价于 if(!!e) 取反

结论

if(e!=null&&e!=undefined&&e!=''&&e!=0) 等价于 if(e) 等价于 if(!!e)

if(!e) 等价于 if(!!!e)

实验

在这里插入图片描述

总结

实用

if(e) 判断变量是否“非空”,“非空”就通过。

if(!e) 判断变量是否“为空”,"为空”就通过。 ( if(e) 取反 )

其他操作……

锻炼手指

实验code

		// empty
        var e = null;
        //undefined
        var u = undefined;
        //blank
        var b = '';
        //number
        var n = 0;
        //if(e!=null&&e!=undefined&&e!=''&&e!=0)
        console.log("------if(e!=null&&e!=undefined&&e!=''&&e!=0)------");
        if(e!=null&&e!=undefined&&e!=''&&e!=0)console.log('L e pass');
        if(u!=null&&e!=undefined&&e!=''&&e!=0)console.log('L u pass');
        if(b!=null&&e!=undefined&&e!=''&&e!=0)console.log('L b pass');
        if(n!=null&&e!=undefined&&e!=''&&e!=0)console.log('L n pass');
        //if(e)
        console.log('------if(e)------');
        if(e)console.log('A e pass');
        if(u)console.log('A u pass');
        if(b)console.log('A b pass');
        if(n)console.log('A n pass');
        //if(!e) !
        console.log('------if(!e)------');
        if(!e)console.log('if(!e) e pass');
        if(!u)console.log('if(!e) u pass');
        if(!b)console.log('if(!e) b pass');
        if(!n)console.log('if(!e) n pass');
        //if(!!e) !!
        console.log('------if(!!e)------');
        if(!!e)console.log('if(!!e) e pass');
        if(!!u)console.log('if(!!e) u pass');
        if(!!b)console.log('if(!!e) b pass');
        if(!!n)console.log('if(!!e) n pass');
        //if(!!!e) !!!
        console.log('------if(!!!e)------');
        if(!!!e)console.log('if(!!!e) e pass');
        if(!!!u)console.log('if(!!!e) u pass');
        if(!!!b)console.log('if(!!!e) b pass');
        if(!!!n)console.log('if(!!!e) n pass');
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SUNbrightness

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值