📅  最后修改于: 2023-12-03 15:16:16.150000             🧑  作者: Mango
JavaScript中的运算符优先级决定了表达式中运算符求值的顺序。当一个表达式中含有多个运算符时,运算符优先级会决定哪个运算符会先于其他运算符进行求值。不同运算符拥有不同的优先级,可以使用括号来改变运算符的优先级。
以下是一些常见的JavaScript运算符按照从高到低的优先级排序:
()
a.b
或 a[b]
func(x)
x++
或 x--
!x
+x
或 -x
*
、/
或 %
+
或 -
<
、>
、<=
、>=
==
、!=
、===
、!==
&&
||
condition ? expr1 : expr2
=
请注意,上述仅是一些常见运算符的优先级示例,完整列表可以参考JavaScript运算符优先级。
以下是一个示例,演示了运算符优先级的使用:
let a = 2;
let b = 3;
let c = 4;
let result = a + b * c; // 等同于 a + (b * c)
console.log(result); // 输出 14
result = (a + b) * c; // 使用圆括号改变运算符的优先级
console.log(result); // 输出 20
在上述示例中,计算表达式 a + b * c
时,由于乘法运算符的优先级高于加法运算符,因此乘法先于加法进行求值,得到的结果是 2 + (3 * 4)
,即 2 + 12
,最终结果为 14
。而在 (a + b) * c
中,使用了圆括号改变了运算符的优先级,先计算括号中的加法,再乘以 c
,得到的结果是 5 * 4
,最终结果为 20
。
通过了解运算符的优先级,程序员可以更好地控制表达式的求值顺序,避免出现意外的结果。使用适当的圆括号可以改变运算符的优先级,确保表达式按照预期进行求值。