JavaScriptはAndroidのWebViewに問題が発生しました.


今日は問題に悩まされています.ブラウザ(携帯電話でもPCでも)のページが運営されていますが、WebViewを通じて問題が発生しました.二つの計算がずっと間違っています.そこでalertを通して、この値を表示してみると、ブラウザで計算した結果とはずいぶん違っています.本来は正数なのに、マイナスになりました.注意深く比較してみると、一部の数字は消去されています.これらの数字はすべてパースIntを通じて文字列から変換されてきました.抹消された値は、他の正常な数字と唯一の違いは、「0903」のように0で始まるが、他の値は全部「90874」である.このように、理由は明らかであり、WebViewがサポートしているJavaScriptのParseIntは0で始まる文字列をすべて0に変換している.問題が解決されれば簡単です.自分でstr 2 Intの方法を書いて、パーrseIntの代わりにすればいいです.
    str2Int:function(str){
        str = str.replace(/^0+/g, '');
        if(str.length == 0){
            return 0;
        }
        return parseInt(str);
    }