2
我試圖端口一個Python庫爲Javascript,但無意中發現了兩者之間的數值差..按位移位精度
使用Python,1057618395136 >> 16 == 16137976 用JavaScript,1057618395136 >> 16 == 16120
我讀取Javascript中的整數精度是53位,Math.pow(2,53)== 9007199254740991),它仍然在bifshift操作的範圍內,我試圖做..什麼我錯過了嗎?
謝謝,這很有道理! 出於好奇(我知道這樣的微觀優化是可忽略的),在bitshift和division之間的性能有差異嗎? – Martijnh
@Martijnh好吧,JavaScript運行時可能會認識到你被一個2的冪的常數分開的事實。大多數現代硬件(除了低端手機)可能會做64位移位操作。無論是否有實際的實現,我都不知道。 – Pointy