JavaScript中 a === 1 || a === 2 || a === 3 能改为 a === 1 || 2 || 3吗?

const a = 2
if (a === 1 || 2 || 3) {
    console.log(a) // 2
}
条件始终为 true,不能用于条件判断
改:
const b = 2
if (b === 1 || b === 2 || b === 3) {
    console.log(b) // 2
}

附 JS 运算符优先级(从高到低)

运算符 描述
. [] () 字段访问、数组下标、函数调用以及表达式分组
++ – - ~ ! delete new typeof void 一元运算符、返回数据类型、对象创建、未定义值
* / % 乘法、除法、取模
+ - + 加法、减法、字符串连接
<< >> >>> 移位
< <= > >= instanceof 小于、小于等于、大于、大于等于、instanceof
== != === !== 等于、不等于、严格相等、非严格相等
& 按位与
^ 按位异或
| 按位或
&& 逻辑与
|| 逻辑或
?: 条件
= oP= 赋值、运算赋值
, 多重求值

猜你喜欢

转载自blog.csdn.net/jinchenxinglaiy/article/details/109047489