JavaScript在Android的WebView中出现一个问题
程序员文章站
2022-03-29 13:47:55
...
今天被一个问题困扰,有一个页面在浏览器(无论是手机还是PC)上运行良好,而通过WebView就出现了问题,有两个值得计算始终出错。于是就通过alert,把这个值显示出来,发现和浏览器上计算的结果差了很多,本来是正数,却变成了负数。仔细比对发现,其中一部分数字被抹掉了,这些数字都是通过parseInt由字符串转化而来的。而被抹掉的值,和其他正常的数字唯一区别是,它们都是以0开头的,比如“04903”,而其他值都是“90874”。如此,原因就很明显了,WebView支持的JavaScript的parseInt把以0开头的字符串全部转为了0。问题找到了解决就比较容易了,自己写一个str2Int的方法,来代替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);
}
下一篇: 计算两个日期中间的时间的java代码示例
推荐阅读
-
html5在android中的使用问题及技巧解读
-
在android开发中尽量不要使用中文路径的问题详解
-
基于Android中Webview使用自定义的javascript进行回调的问题详解
-
10个在随机出现在面试中的Linux问题及答案
-
Android关于WebView中无法定位的问题解决
-
解决betterScroll在vue中存在图片时,出现拉不动的问题
-
JavaScript求一个数组中重复出现次数最多的元素及其下标位置示例
-
Android studio Kotlin中配置GRPC和protobuf时出现的一些问题总结
-
在字符串中找出第一个只出现一次的字符。经典C语言例题
-
react-native 在新版Xcode(10+)中运行出现的问题: node_modules/react-native/third-party/glog-0.3.4 , C compiler cannot create executables