举例说明问题:
描述场景: 有两个变量arg1 ,arg2,只要其中一个为true,就输出‘yes’
let arg1 = true;
let arg2 = false;
console.log(arg1 === true || arg2 === true && 'yes')
// 结果输出 true 原因是:&& 符号的优先级高于 || 符号
正确写法
let arg1 = true;
let arg2 = false;
console.log((arg1 === true || arg2 === true) && 'yes')
// 结果输出 'yes' 原因是: ()优先级高于 && 符号
再来 练练手 先别看答案哦
console.log(4 >= 6 || '人' != '阿凡达' && !(12 * 2 == 144) && true)
var num = 10;
console.log(5 == num / 2 && (2 + 2 * num).toString() === '22');
console.log('-------------------');
var a = 3 > 5 && 2 < 7 && 3 == 4;
console.log(a);
var b = 3 <= 4 || 3 > 1 || 3 != 2;
console.log(b);
var c = 2 === "2";
console.log(c);
var d = !c || b && a;
console.log(d);
公布答案
想看更具体的 看MDN文档吧