JavaScript在Android的WebView中出現(xiàn)一個(gè)問(wèn)題
來(lái)源:懂視網(wǎng)
責(zé)編:小采
時(shí)間:2020-11-27 20:30:39
JavaScript在Android的WebView中出現(xiàn)一個(gè)問(wèn)題
JavaScript在Android的WebView中出現(xiàn)一個(gè)問(wèn)題:今天被一個(gè)問(wèn)題困擾,有一個(gè)頁(yè)面在瀏覽器(無(wú)論是手機(jī)還是PC)上運(yùn)行良好,而通過(guò)WebView就出現(xiàn)了問(wèn)題,有兩個(gè)值得計(jì)算始終出錯(cuò)。于是就通過(guò)alert,把這個(gè)值顯示出來(lái),發(fā)現(xiàn)和瀏覽器上計(jì)算的結(jié)果差了很多,本來(lái)是正數(shù),卻變成了負(fù)數(shù)。仔細(xì)比對(duì)發(fā)現(xiàn),其中一部分
導(dǎo)讀JavaScript在Android的WebView中出現(xiàn)一個(gè)問(wèn)題:今天被一個(gè)問(wèn)題困擾,有一個(gè)頁(yè)面在瀏覽器(無(wú)論是手機(jī)還是PC)上運(yùn)行良好,而通過(guò)WebView就出現(xiàn)了問(wèn)題,有兩個(gè)值得計(jì)算始終出錯(cuò)。于是就通過(guò)alert,把這個(gè)值顯示出來(lái),發(fā)現(xiàn)和瀏覽器上計(jì)算的結(jié)果差了很多,本來(lái)是正數(shù),卻變成了負(fù)數(shù)。仔細(xì)比對(duì)發(fā)現(xiàn),其中一部分
今天被一個(gè)問(wèn)題困擾,有一個(gè)頁(yè)面在瀏覽器(無(wú)論是手機(jī)還是PC)上運(yùn)行良好,而通過(guò)WebView就出現(xiàn)了問(wèn)題,有兩個(gè)值得計(jì)算始終出錯(cuò)。于是就通過(guò)alert,把這個(gè)值顯示出來(lái),發(fā)現(xiàn)和瀏覽器上計(jì)算的結(jié)果差了很多,本來(lái)是正數(shù),卻變成了負(fù)數(shù)。仔細(xì)比對(duì)發(fā)現(xiàn),其中一部分?jǐn)?shù)字被抹掉了,這些數(shù)字都是通過(guò)parseInt由字符串轉(zhuǎn)化而來(lái)的。而被抹掉的值,和其他正常的數(shù)字唯一區(qū)別是,它們都是以0開(kāi)頭的,比如“04903”,而其他值都是“90874”。如此,原因就很明顯了,WebView支持的JavaScript的parseInt把以0開(kāi)頭的字符串全部轉(zhuǎn)為了0。問(wèn)題找到了解決就比較容易了,自己寫一個(gè)str2Int的方法,來(lái)代替parseInt就可以了。
[javascript]
str2Int:function(str){
str = str.replace(/^0+/g, '');
if(str.length == 0){
return 0;
}
return parseInt(str);
}
str2Int:function(str){
str = str.replace(/^0+/g, '');
if(str.length == 0){
return 0;
}
return parseInt(str);
}
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
JavaScript在Android的WebView中出現(xiàn)一個(gè)問(wèn)題
JavaScript在Android的WebView中出現(xiàn)一個(gè)問(wèn)題:今天被一個(gè)問(wèn)題困擾,有一個(gè)頁(yè)面在瀏覽器(無(wú)論是手機(jī)還是PC)上運(yùn)行良好,而通過(guò)WebView就出現(xiàn)了問(wèn)題,有兩個(gè)值得計(jì)算始終出錯(cuò)。于是就通過(guò)alert,把這個(gè)值顯示出來(lái),發(fā)現(xiàn)和瀏覽器上計(jì)算的結(jié)果差了很多,本來(lái)是正數(shù),卻變成了負(fù)數(shù)。仔細(xì)比對(duì)發(fā)現(xiàn),其中一部分