Math.roundの代わりに使えるビット演算

指定した数を整数に丸める

JavaScriptのMath.roundは、引数を整数に丸めることができます。たとえば、

 Math.round(0.4); // 0を出力
 Math.round(0.5); // 1

のように、四捨五入をしてくれるわけです。
それで、このMath.round関数の代わりに、ビット演算を使って次のように書くことができます。(注1)

 (0.5 + 0.3) | 0; // 0を出力
 (0.5 + 0.6) | 0; // 1

処理が速くなりそうなので、SIEでも使ってみようと考えています。

参考資料

注1 「HTML5 canvas のパフォーマンスを向上させる - HTML5 Rocks」

http://www.html5rocks.com/ja/tutorials/canvas/performance/