Javascript中的逻辑与,逻辑或两个运算符的计算过程和传统语言的不太一样。
🍺 逻辑与
result = a && b && fallback;
返回第一个假值的原始值,或者兜底值的原始值。
🍺 逻辑或
result = a || b || fallback;
返回第一个真值的原始值,或者兜底值的原始值。
🚬 与运算 && 的优先级比 || 高
🍺 逻辑非
逻辑取反操作,比如
!'hi there'
的值为false,不过一般是用两个连续的!!计算某个表达式对应的布尔值。
😊几个考考你的表达式
alert( alert(1) || 2 || alert(3) );
alert( alert(1) && alert(2) );
alert( null || 2 && 3 || 4 );