首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript逻辑运算符内部

JavaScript逻辑运算符内部
EN

Stack Overflow用户
提问于 2013-06-06 08:01:31
回答 1查看 133关注 0票数 0

在阅读JavaScript文档时,我遇到了一个让我感到困惑的section

“逻辑运算符通常与布尔值(逻辑)值一起使用;当它们使用时,它们返回布尔值。但是,&&和||运算符实际上返回指定操作数之一的值,因此如果这些运算符与非布尔值一起使用,它们可能返回非布尔值。下表介绍了这些逻辑运算符。

代码语言:javascript
复制
&& Operator: expr1 && expr2

(逻辑与)如果可以转换为false,则返回expr1;否则,返回expr2。因此,当与布尔值一起使用时,如果两个操作数都为true,则&&返回true;否则返回false。

代码语言:javascript
复制
|| Operator: expr1 || expr2

(逻辑或)如果可以转换为true,则返回expr1;否则,返回expr2。因此,当与布尔值一起使用时,如果其中一个操作数为true,则||返回true;如果两个操作数都为false,则返回false。

假设你有:

代码语言:javascript
复制
var a3 = false && true; 

因此,考虑到"and“运算符的规则,变量a3应该包含值true,因为" false”不能转换为false。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-06 08:20:18

选择“可转换为假”一词源于JavaScript具有真实和虚假的值。

所有值都可以转换为真值或假值。

false为false,因此不会发生这样的类型转换,但其他值将转换为false,例如:

代码语言:javascript
复制
undefined, null, NaN, 0, ""

因此,and语句将返回false而不是true,因为false已经是false,不需要进行任何转换。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16951766

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档