blackberry os7 ブラウザーで次のコードを試しました。
<html>
<body>
test page
<script>
i = 0;
if(i < -2147483647) {
alert("very low")
}
if(i < -2147483648) {
alert("very very low")
}
if(i < -2147483649) {
alert("very very very low")
}
</script></body></html>
そして驚くべきことに、それは非常に非常に低いものでした!!
JavaScriptの整数はそれ以上をサポートするはずだと思っていました。もちろん、このコードは他のブラウザでもうまく動作します...
注意が必要なのは、ブラックベリーで gwt アプリを実行しようとしていることがわかりました。OS6 では正常に動作しましたが、OS7 では動作しませんでした。GWT でコンパイルしたコードをデバッグしたところ、Integer.parseInt の JavaScript 実装に int の極端な高低を使用したテストが行われました。OS7 ブラウザーはこれらの極端な値を適切にサポートしていないようです (ビット オーバーフロー?) 例外が発生し、アプリが起動しません...
私はその解決策を見つけようとしています。ブラックベリーのためだけに GWT の integer.parseInt 実装を書き直すことを考えています。どう思いますか?他のアイデアはありますか?