JS(JavaScript)中A && B || C && D到底需不需要括号(A && B) || (C && D)

52 阅读1分钟

验证以上问题涉及逻辑运算符优先级问题,但如何验证呢 搜索可能会有长篇大论,或者是复杂的方法论证 其实浏览器console(控制台)简单的几个表达式即可说明问题,请看示例: 1 && 2 || 0 && 3 2 1 && 2 || 0 2 2 && 3 3 2 || 0 2

解析: 1 && 2结果为2 ,0 && 3结果为0 如果顺序执行1 && 2 || 0结果是2,2 && 3结果为3;如果先执行&&,后执行||,2 || 0结果为2 可见,1 && 2 || 0 && 3结果为2,说明先执行&&,后执行||。

结论:不需要括号。