JavaScript 中的雙波號運算子(~~)
在JavaScript 中,~~ 運算子是一個型別強制運算子,它會刪除後面的所有內容數字的小數點。這與 ~ 運算子不同,~ 運算子是位元 NOT 運算符,可反轉值的位元。
操作
運算子的工作原理是先將其值轉換為運算元為有符號 32 位元整數。這意味著即使操作數是浮點數或字串,內部也會將其視為整數。 運算子有效地執行以下操作:
有用性
雖然~~ 運算子看起來像是Math.floor 或Math.ceil 的簡單替代品,但它具有一些限制:
因此,一般建議使用x(一元加)或Number( x) 用於類型強制轉換,Math.floor 或 Math.ceil 用於四捨五入。
範例
考慮數字-43.2:
~~(-43.2) = -43
Math. floor(-43.2) = -44
如你可以看到,~~ 向零舍入,而Math.floor 向下捨入。此行為在某些情況下可能很有用,例如不使用小數點截斷數字。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3