我试图理解使用移位时计算中数学上正确的顺序。
我发现 Javascript 似乎按照以下优先级顺序进行计算:
^ */+ - << >>
二进制计算器例如Windows10的计算器使用的优先级顺序为:
<< >> ^ */+ -
但是在这种情况下,数学上正确的顺序是什么?
例如:
计算器 1 + 3 Lsh 3 - 1(结果:24)
Javascript 1 + 3 << 3 - 1(结果:16)
尝试一下: http://www.w3schools.com/code/tryit.asp?filename=F0L1LGPQX9T2
最佳答案
这没有“数学上正确的顺序”
数学考虑指数、乘法/除法和加法/减法,但按位运算是编程语言附带的,请参阅 https://en.wikipedia.org/wiki/Order_of_operations#Programming_languages
关于javascript - Javascript中左移 "Lsh"的计算顺序规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40488008/