JS &&、||、!逻辑运算符及用法 - C语言中文网

文章推薦指數: 80 %
投票人數:10人

&& 运算符的操作数既可以是布尔值,也可以是除了true 和false 以外的其他真值和假值。

所谓“假值”是指false、null、undefined、0、-0、NaN 和空字符串"";“真值” ... 首页 教程 VIP会员 一对一答疑 辅导班 公众号 首页 C语言教程 C++教程 Python教程 Java教程 Linux入门 更多>> 首页>编程笔记 JS&&、||、!逻辑运算符及用法 逻辑表达式需要使用逻辑运算符对表达式进行逻辑运算。

使用逻辑运算符可将多个关系表达式组合成一个复杂的逻辑表达式。

表达式中包含关系表达式时,将首先运算关系表达式,然后再对关系表达式的结果进行逻辑运算。

逻辑运算符包括单目运算符和双目运算符,见表1。

表1:逻辑运算符 运算符 描述 类型 示例 ! 取反(逻辑非) 单目运算符 !3 //返回值为false && 与运算(逻辑与) 双目运算符 true&&true //返回值为true || 或运算(逻辑或) 双目运算符 false||true  //返回值为true 1.逻辑&&运算符 &&运算符执行逻辑与运算,可以实现任意类型的两个操作数的逻辑与运算,运算结果可能是布尔值,也可能是非布尔值。

&&运算符的操作数既可以是布尔值,也可以是除了true和false以外的其他真值和假值。

所谓“假值”是指false、null、undefined、0、-0、NaN和空字符串"";“真值”就是除假值以外的任意值。

在实际使用时,常常使用&&连接关系表达式,此时会先计算关系表达式的值,最后再计算逻辑表达式的值。

使用&&运算符计算表达式时遵循以下两条规则: 如果&&运算符左边的操作数为true或其他真值,将继续进行右边操作数的计算,最终结果返回右边操作数的值; 如果&&运算符左边的操作数为false或其他假值,将不会进行右边操作数的计算,最终结果返回左边操作数的值。

该规则也称为“短路”规则。

【例1】逻辑&&运算符的使用。

逻辑&&运算符的使用 上述代码在Chrome浏览器的控制台中的运行结果如图1所示。

图1:逻辑与运算表达式结果 从图1的运行结果可看出,逻辑与表达式的值既可以是布尔值,也可以是非布尔值。

表达式的值由左边的操作数决定,如果左边操作数为true或其他真值,则表达式的值等于右边操作数的值;如果左边操作数为false或其他假值,则表达式的值等于左边操作数的值。

2.逻辑||运算符 ||运算符执行逻辑或运算,和&&运算符一样,可以实现任意类型的两个操作数的逻辑或运算,运算结果可能是布尔值,也可能是非布尔值。

||运算符的操作数既可以是布尔值,也可以是除true和false外的其他真值和假值。

在实际使用时,常常使用||连接关系表达式,此时会先计算关系表达式的值,最后再计算逻辑表达式的值。

使用||运算符计算表达式时遵循以下两条规则: 如果其中一个或两个操作数是真值,表达式返回真值;如果两个操作数都是假值,表达式返回假值; 如果||运算符左边的操作数为true或其他真值,将不会进行右边操作数的计算,最终结果返回左边操作数的值(该规则也称为逻辑或运算的“短路”规则);否则继续计算右边操作数的值,并返回右边操作数的值作为表达式的值。

【例2】逻辑||运算符的使用。

逻辑||运算符的使用 上述代码在Chrome浏览器的控制台中的运行结果如图2所示。

图2:逻辑或运算表达式结果 从图2的运行结果可看出,逻辑或表达式的值既可以是布尔值,也可以是非布尔值。

整个表达式的值由左边的操作数决定,如果左边操作数为true或其他真值,则表达式的值等于左边操作数的值;如果左边操作数为false或其他假值,则表达式的值等于右边操作数的值。

3.逻辑!运算符 !运算符执行逻辑非运算,是单目运算符,它的操作数只有一个。

和其他逻辑运算符一样,其操作数可以是任意类型,但逻辑非运算只针对布尔值进行运算。

所以,!运算符在执行运算时,首先将操作数转换为布尔值,然后再对布尔值求反。

也就是说,!运算总是返回true或false布尔值。

【例3】逻辑运算符!的使用。

逻辑!运算符的使用 上述代码在Chrome浏览器的控制台中的运行结果如图3所示。

图3:逻辑非运算表达式结果 从图3可看出,不管操作数的类型是什么,最终逻辑非表达式的值都是布尔值。

关注公众号「站长严长生」,在手机上阅读所有教程,随时随地都能学习。

本公众号由站长亲自运营,长期更新,坚持原创,专注于分享创业故事+学习历程+工作记录+生活日常+编程资料。

微信扫码关注公众号 优秀文章 |和||的区别,C语言|和||的区别详解 Linux内核(内核模块)的加载过程(超详细) 什么是线程库,线程库类别及其应用 MySQL修改数据表(ALTERTABLE语句) Shell四种运行方式(启动方式) 汇编语言布尔表达式(NOT、AND、OR) Go语言数据I/O对象及操作 301跳转(重定向)对SEO的作用 JSP九大内置对象一览表 SQLINNERJOIN:内连接 精美而实用的网站,分享优质编程教程,帮助有志青年。

千锤百炼,只为大作;精益求精,处处斟酌;这种教程,看一眼就倾心。

关于网站| 关于站长| 如何完成一部教程| 公众号| 联系我们| 网站地图 Copyright©2012-2022biancheng.net,冀ICP备2022013920号,冀公网安备13110202001352号 ↑


請為這篇文章評分?