面试题答案
一键面试- 输出结果:
console.log(result);
输出3
。console.log(c);
输出4
。
- 操作符优先级和结合性分析:
- 在 JavaScript 中,逻辑与
&&
优先级高于逻辑或||
。 - 首先计算
a && b
,a
的值为2
(在布尔上下文中为真值),b
的值为3
(在布尔上下文中为真值),所以a && b
的结果为b
的值,即3
。 - 然后计算
3 || c++
,由于3
在布尔上下文中为真值,根据逻辑或的短路特性,不会再计算c++
,直接返回3
作为result
的值。 - 所以
c
的值保持不变,仍然为4
。
- 在 JavaScript 中,逻辑与