概述
布尔运算符用于将表达式转为布尔值,一共包含四个运算符。
取反运算符:!
以下六个值取反后为true,其他值都为false。
undefined
null
false
0
NaN
空字符串('')
且运算符:&& 返回第一个fasle值 否则返回到最后
或运算符:|| 返回一个ture的值 否则返回到最后
三元运算符:?: if else区别在于 三元有返回的值 if没有
't' && '' // ""
't' && 'f' // "f"
't' && (1 + 2) // 3
'' && 'f' // ""
'' && '' // ""
't' || '' // "t"
't' || 'f' // "t"
'' || 'f' // "f"
'' || '' // ""
短路
if (i) {
doSomething();
}
// 等价于
i && doSomething()
var x = 1;
true || (x = 2) // true
x // 1
或运算符常用于为一个变量设置默认值。
function saveText(text) {
text = text || '';
// ...
}
// 或者写成
saveText(this.text || '')
上面代码表示,如果函数调用时,没有提供参数,则该参数默认设置为空字符串。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。