1

変換するには、次のようにします。

var a = "129.13"|0,  // becomes 129

var b = 11.12|0; // becomes 11

var c = "112"|0; // becomes 112

これは機能しているようですが、これが標準のJS機能であるかどうかはわかりません。これが文字列と小数を整数に変換するために安全に使用できるかどうか誰かが知っていますか?

4

1 に答える 1

5

はい、標準的な動作です。ビット演算子は整数のみを操作するため、与えられた数値を符号付き 32 ビット整数に変換します。

これは、最大範囲が符号付き 32 ビット整数から 1 を引いたもの、つまり2147483647.

(Math.pow(2, 32) / 2 - 1)|0; // 2147483647

(Math.pow(2, 32) / 2)|0; // -2147483648 (wrong result)
于 2012-10-02T17:51:09.040 に答える