其他分享
首页 > 其他分享> > 【JS】&&与||的优先级的证明

【JS】&&与||的优先级的证明

作者:互联网

文章:运算符优先级
规定:JS中规定&&优先级高于||,运算符的优先级决定了表达式中运算执行的先后顺序

但是如果理解&&||优先级谁先执行运算,无法证明这一点

// 设置一个会打印结果的函数,观察是否会运行此函数
var a = 0
function setA(val, res) { a = val; console.log(a); return res}
setA(3, true) && setA(1, true) || setA(2, false)
// 3
// 1
// true

结果:&&运算符得出结果后,直接返回最终结果没有验证||运算符结果

setA(3, false) || setA(1, true) && setA(2, false)
// 3
// 1
// 2
// false

结果:||运算符得出结果后继续运算&&后,得出最终结果

可以看出示例中没有优先运算&&,会按顺序一步步运算&&得出为假结论即返回,||得出为真结果即返回。

这与我们理解的乘除加减的运算不同,数学运算会先运算乘除后运算加减。

不知道如何证明&&的优先级高于||

标签:优先级,运算,JS,运算符,&&,false,setA
来源: https://blog.csdn.net/weixin_44100002/article/details/121244614