IP アドレス情報を処理するページに取り組んでいますが、整数が署名されているという事実が原因で窒息しています。ビット単位の演算子を使用して高速化していますが、64 番目のビット (符号付き/符号なしフラグ) がめちゃくちゃです。
Javascriptで数値を強制的に無署名にする方法はありますか? サブネットが 30 を超えるか 2 未満になるまで、問題なく動作しているようです。
これを試して:
<html>
<body>
<script type='text/javascript'>
document.write( (1 << 30) +"<br/>");
document.write( (1 << 31) +"<br/>");
document.write( (1 << 32) +"<br/>");
</script>
</body>
</html>
結果:
1073741824 -2147483648 1