MST
星途 面试题库

面试题:JavaScript操作符优先级与结合性中级题

请写出以下JavaScript代码的运行结果,并解释原因:`console.log(2 + 3 * 2 ** 2 - 1 / 2);`
20.7万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

一键面试
  1. 运行结果
    • 运行结果为 13.5
  2. 原因解释
    • 在 JavaScript 中,表达式遵循运算符优先级规则进行计算。运算符优先级从高到低大致为:幂运算(**)、乘除(*/)、加减(+-)。
    • 首先计算 2 ** 2,即 2 的平方,结果为 4
    • 然后计算 3 * 4,结果为 12
    • 接着计算 1 / 2,结果为 0.5
    • 最后按照顺序进行加减运算:2 + 12 - 0.5,即 14 - 0.5,结果为 13.5

所以 console.log(2 + 3 * 2 ** 2 - 1 / 2); 输出 13.5