js逻辑运算符

"&&","||","!"

undefined,null,NaN,"",0,false ==> false
其余表达式转换为布尔值的时候都为真

"&&",从左到右遇到真就跳到下一个表达式,遇到假或到最后一个表达式就返回其值。("||",与其相反)

执行时先看第一表达式转换成布尔值的结果,如果结果为真,那么它会看第二个表达式转换为布尔值的结果,然后如果只有两个表达式的话,只看到第二个表达式,就可以返回该表达式运算完的值了。

var a = 1 && 2;
console.log(a);//2
var a = 1 && 2 && 3;
console.log(a);//3
var a = 1 && 2 + 2;
console.log(a);//4
var a = 1 && 0 && 2;
console.log(a);//0
var a = 1 && false && 2;
console.log(a);//false

&&短路语句运用

2 > 1 && console.log('aa');

如果前面条件表达式成立(2>1),那么就执行后面的表达式。

||运用

& | !

&运算,比较二进制,在等位上,相同为1,不同为0。
例如:

  • 1和2 二进制为 01和10,即
    01
    10
    --
    00
  • 1和3 二进制为 01和11,即
    01
    11
    --
    01
var num = 1 & 2;
console.log(num);//0
var num = 1 & 3;
console.log(num);//1

"||"写兼容

div.onclick = function(e){
  var event = e || window.event;//IE与非IE。。。
}

"!"转化为布尔值再取反

var a = !123;
console.log(a);//false

"!!"转化为布尔值

var a = !!123;
console.log(a);//true
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 运算符的代码优化,可以精简代码,提高代码可读性 下面主要讨论下逻辑运算符与 &&, 或||。 示例: 假设对成长速...
    一只阿木木阅读 1,005评论 1 6
  • 运算符是处理数据的基本方法,用来从现有的值得到新的值。JavaScript 提供了多种运算符,本章逐一介绍这些运算...
    徵羽kid阅读 806评论 0 0
  • js逻辑运算符 1、JS中的||符号: 运算方法:只要“||”前面为false,不管“||”后面是true还是fa...
    心i_af0a阅读 1,488评论 0 0
  • js逻辑运算符 1、JS中的||符号: 运算方法:只要“||”前面为false,不管“||”后面是true还是fa...
    浮华_e823阅读 873评论 0 0
  • js逻辑运算符 1、JS中的||符号:运算方法:只要“||”前面为false,不管“||”后面是true还是fal...
    现实里的童话xklss阅读 437评论 0 0

友情链接更多精彩内容