首頁 >web前端 >js教程 >JavaScript在Android的WebView中parseInt函數轉換不正確問題解決方法_javascript技巧

JavaScript在Android的WebView中parseInt函數轉換不正確問題解決方法_javascript技巧

WBOY
WBOY原創
2016-05-16 16:02:221751瀏覽

今天被一個問題困擾,有一個頁面在瀏覽器(無論是手機還是PC)上運行良好,而透過WebView就出現了問題,有兩個值得計算始終出錯。於是就透過alert,把這個數值顯示出來,發現和瀏覽器上計算的結果差了很多,本來是正數,卻變成了負數。仔細比對發現,其中一部分數字被抹掉了,這些數字都是透過parseInt由字串轉換而來的。而被抹掉的值,和其他正常的數字唯一區別是,它們都是以0開頭的,例如“04903”,而其他值都是“90874”。如此,原因就很明顯了,WebView支援的JavaScript的parseInt把以0開頭的字串全部轉為了0。問題找到了解決就比較容易了,自己寫一個str2Int的方法,來代替parseInt就可以了。

複製程式碼 程式碼如下:

str2Int:function(str){ 
    str = str.replace(/^0 /g, ''); 
    if(str.length == 0){ 
        return 0; 
    } 
    return parseInt(str); 

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn