JavaScript 如何计算这个数学表达式

How Does JavaScript Calculate This Math Expression

为什么这个表达式的输出是20?

我尝试了不同的计算,但它总是导致输出 24。

有人可以向我解释一下 Javascript 如何计算这个表达式吗?

谢谢。

let A = 2;
let B = 4;
let result = B + B * A + 8;

console.log(result);

Output: 20

评价是这样的:

结果 = 4 + 4 * 2 + 8

因为点先于线计算,所以在乘法两边加了一个括号。

像这样:4 + (4 * 2) + 8

计算结果为 4 + 8 + 8,但不能是 20。

可能是你的计算器没有先行点再算线。

希望能帮到你。

我希望这有助于理解

let A = 2;
let B = 4;
let result = (B + B) * A + 8;

console.log(result); //Outputs 24

A = 2;
B = 4;
result = B + (B * A) + 8;

console.log(result); //Outputs 20

它遵循 PEMDAS 的规则(代表括号、指数、乘法和除法、加法和减法)。

这简单的意思是乘法和除法比加法或减法有一个"higher"顺序。这意味着乘法和除法将在任何加法或减法之前首先发生。