逻辑操作符

本文深入探讨了JavaScript中逻辑操作符&&、||和!的使用规则及特性,详细解析了它们在不同数据类型下的表现,以及如何影响代码执行流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

逻辑操作符

&&      只要有一个条件不成立,返回false

说明:在有一个操作数不是布尔值的情况,逻辑与操作就不一定返回值,此时它遵循下列规则:

1、如果第一个操作数隐士类型转换后为true,则返回第二个操作数。说明:规则是两个操作数的情况。

例子: console.log(80 && 50)   -》                                   返回结果                                    50

2、如果第一个操作数隐士类型转换后为false,则返回第一个操作数。说明:规则是两个操作数的情况

例子: console.log(0 && 20)           -》                            返回结果                                     0

3、如果有一个操作数是null,则返回null                      说明:当前面的操作数隐士类型转换后为true 的情况时

4、如果有一个操作数是NaN,则返回NaN                      说明:当前面的操作数隐士类型转换后为true 的情况时

5、如果有一个操作数是undefined,则返回undefined     说明:当前面的操作数隐士类型转换后为true 的情况时

||     或    只要有一个条件成立,返回true

说明:在有一个操作数不是布尔值的情况,逻辑或操作就不一定返回值,此时它遵循下列规则:

console.log('hello' || 0)          ->     // hello            当第一个条件成立时,就不再往下判断。

1、如果第一个操作数隐式类型转换后为true,则返回第一个操作数。 说明:规则是两个操作数的情况。

2、如果第一个操作数隐式类型转换后为false,则返回第二个操作数。说明:规则是两个操作数的情况。

例子: console.log('' || 88 || true)  -》 返回:88 

            console.log('' || 0 || 'abc')  -> 返回: abc

           console.log(0 || '' || null)     ->  返回:null

           console.log(0 || '' || null || 'hello')     ->    返回: hello

3、如果两个操作数是null,则返回null

4、如果两个操作数是NaN,则返回NaN

5、如果两个操作数是undefined,则返回undefined

!非

逻辑非false等于true,逻辑非true等于false

说明:1、无论操作数是什么数据类型,逻辑非都会返回一个布尔值

           2、 !!同时使用两个逻辑非操作符时:

                -            第一个逻辑非操作会基于无论什么操作数返回一个布尔值

               -             第二个逻辑非则是对该布尔值求反

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值