计算顺序规则左移Lsh"在Javascript

Calculation order rules left shift "Lsh" in Javascript

本文关键字:quot Javascript Lsh 顺序 规则 左移 计算      更新时间:2023-09-26

我正在尝试理解在使用移位时计算的数学正确顺序。

我发现Javascript似乎在按优先级顺序进行计算:

^ */+ - <<>>

二进制计算器(例如Windows10的计算器)使用的优先级顺序为:

& lt; & lt;>> ^ */+ -

但是在这种情况下数学上正确的顺序是什么?

例如:

计算器1 + 3 Lsh 3 - 1 (result: 24)

Javascript1 + 3 <<3 - 1 (result: 16)

试一试:http://www.w3schools.com/code/tryit.asp?filename=F0L1LGPQX9T2

没有"数学上正确的顺序"

数学考虑指数、乘法/除法和加法/减法,但位运算由编程语言提供,参见https://en.wikipedia.org/wiki/Order_of_operations#Programming_languages

使用PEMDAS方法:Parentheses, Exponents, Multiplication and Division, and Addition and Subtraction .

这意味着正确的顺序是^ * / + - << >>


JS操作符优先级表