javascript-逻辑AND(\u0026\u0026)和OR(||)运算符
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-逻辑AND(\u0026\u0026)和OR(||)运算符,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1282字,纯文字阅读大概需要2分钟。
内容图文
逻辑AND(&&)和OR(||)运算符—知道他们可以像这样欺骗我们:)
对于JS(根据this的说明),它们的定义如下:
expr1 && expr2 => Returns expr1 if it can be converted to false;
otherwise, returns expr2. Thus, when used with Boolean values, &&
returns true if both operands are true; otherwise, returns false.expr1 || expr2 => Returns expr1 if it can be converted to true;
otherwise, returns expr2. Thus, when used with Boolean values, ||
returns true if either operand is true; if both are false, returns
false.
测试它,的确确实像定义一样工作,但这是问题所在:
false || "" //returns ""
"" || false //returns false
因此,显然:
(false || "") == ("" || false) // true
但是可悲的是
(false || "") === ("" || false) // false
主要的两个问题:
>这是一个错误,还是JavaScript迫使我们使用==运算符或
使用&&时要注意顺序和||操作符?
>为什么javascript无法在此表达式中将expr1转换为true
(“” || false)?我的意思是,它不是像在“”前面加上“
不是(!)运算符?
解决方法:
这就是它们的工作方式.这不是错误:
Returns expr1 if it can be converted to false; otherwise, returns expr2
这意味着您可以使用“默认值”,如下所示:
function someFunc(passedParameter){
var newValue = passedParameter || 1337
}
或在满足条件时运行函数:
var myBool = true;
myBool && someFunc(); // someFunc will only be evaluated if `myBool` is truthy
内容总结
以上是互联网集市为您收集整理的javascript-逻辑AND(\u0026\u0026)和OR(||)运算符全部内容,希望文章能够帮你解决javascript-逻辑AND(\u0026\u0026)和OR(||)运算符所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。