&&与||的用法总结

2018-11-02  本文已影响0人  隔壁老王z
图片来自MDN

从左往右,&&false||true,找到了则将返回找到的值,否则返回下一个。

一些特殊用法:

// => aaa
var attr = true && 4 && "aaa";
// => 0
var attr = true && 0 && "aaa";
// => 100
var attr = 100 || 12;
// => e
var attr = "e" || "hahaha"
// => hahaha
var attr = "" || "hahaha"
/*
x>=15时 => 4
x>=12时 => 3
x>=10时 => 2
x>=5时 => 1
x<5时 => 0
*/
console.log((x>=15 && 4) || (x>=12 && 3) || (x>=10 && 2) || (x>=5 && 1) || 0);

里面的括号也可以去掉,因为&&的优先级是高于||的。

/*
x=15 时 => 4
x=12 时 => 3
x=10 时 => 2
x=5 时 => 1
其它 => 0
*/
console.log( {'5':1,'10':2,'12':3,'15':4}[x] || 0 );
if(a >=5){alert("你好");}
//可以写成: 
a >= 5 && alert("你好");
上一篇 下一篇

猜你喜欢

热点阅读