Javascript 函数parseInt()转换时出现bug问题


Posted in Javascript onMay 20, 2014

这是一个很诡异的事情,今天测试的测出来的。parseInt(1.13*100),实际返回值是112。直接看代码吧

<head> 
<script type="text/javascript"> 
function test(){ 
var thisvalue = 0; 
thisvalue=yuanToFen($("#inp").val()); alert(thisvalue); 
} 
/*元转分*/ 
function yuanToFen(yuan){ 
return parseInt(yuan*100,10);//解决方法:将 此处返回改为:parseInt(yuan*1000,10)/10; 
} 
</script> 
</head> 
<body> 
<div> 
<input type="text" id="inp" name="pl" value="1.14"/><!-- 当输入值是:1.13、1.14、1.15、1.16时,此bug才会出现,其他数据目前没有发现有此bug --> 
<input type="button" name="ok" value="确认" onclick="test();"/> 
</div> 
</body> 
</html>

当执行以上代码时,你会发现,当你输入1.13-1.16这期间的数字时,比如输入了1.13,但是alert出来的值却是1.12,同样,输入是1.16则alert出1.15.

但是当输入2.13、3.13、0.13都不会出现这样的情况。

此bug对于最做账的业务来说尤其重要。

例如:你要给某某人汇款,汇款单位是(亿元),你汇款1.13个亿,结果实际成了1.12个亿。哈哈。开个玩笑。但是程序是讲究严谨,不管是一分钱还是零点零一分钱是谁的就是谁的,千万不能马虎。

Javascript 相关文章推荐
jQuery与ExtJS之选择实例分析
Aug 19 Javascript
Js实现双击鼠标自动滚动屏幕的示例代码
Dec 14 Javascript
document.write的几点使用心得
May 14 Javascript
JavaScript实现非常简单实用的下拉菜单效果
Aug 27 Javascript
Ionic如何实现下拉刷新与上拉加载功能
Jun 03 Javascript
javascript常用的设计模式
Feb 09 Javascript
BootStrap给table表格的每一行添加一个按钮事件
Sep 07 Javascript
angular中ui calendar的一些使用心得(推荐)
Nov 03 Javascript
vuex的数据渲染与修改浅析
Nov 26 Vue.js
element多个表单校验的实现
May 27 Javascript
详解Vue的列表渲染
Nov 20 Vue.js
JavaScript中MutationObServer监听DOM元素详情
Nov 27 Javascript
JavaScript中this关键词的使用技巧、工作原理以及注意事项
May 20 #Javascript
Jquery插件分享之气泡形提示控件grumble.js
May 20 #Javascript
实现网页页面跳转的几种方法(meta标签、js实现、php实现)
May 20 #Javascript
jQuery.holdReady()使用方法
May 20 #Javascript
js判断上传文件类型判断FileUpload文件类型代码
May 20 #Javascript
jQuery 如何先创建、再修改、后添加DOM元素
May 20 #Javascript
特殊情况下如何获取span里面的值
May 20 #Javascript
You might like
php 面向对象的一个例子
2011/04/12 PHP
php带抄送和密件抄送的邮件发送方法
2015/03/20 PHP
浅析iis7.5安装配置php环境
2015/05/10 PHP
PHP中Cookie的使用详解(简单易懂)
2017/04/28 PHP
PHP实现的服务器一致性hash分布算法示例
2018/08/09 PHP
JavaScript 联动的无限级封装类,数据采用非Ajax方式,随意添加联动
2010/06/29 Javascript
解决ueditor jquery javascript 取值问题
2014/12/30 Javascript
Javascript 5种方法实现过滤删除前后所有空格
2016/06/22 Javascript
基于javascript实现按圆形排列DIV元素(二)
2016/12/02 Javascript
angular-ngSanitize模块-$sanitize服务详解
2017/06/13 Javascript
Vue实现购物车场景下的应用
2017/11/27 Javascript
jQuery提示框插件SweetAlert用法分析
2019/08/05 jQuery
p5.js实现故宫橘猫赏秋图动画
2019/10/23 Javascript
[01:00:26]Ti4主赛事胜者组第一天 EG vs NEWBEE 1
2014/07/19 DOTA
Python正则表达式介绍
2012/08/06 Python
详解Python爬虫的基本写法
2016/01/08 Python
Python内置的HTTP协议服务器SimpleHTTPServer使用指南
2016/03/30 Python
python导出hive数据表的schema实例代码
2018/01/22 Python
Python 中Pickle库的使用详解
2018/02/24 Python
Python中的TCP socket写法示例
2018/05/11 Python
Python闭包执行时值的传递方式实例分析
2018/06/04 Python
PyQt4 treewidget 选择改变颜色,并设置可编辑的方法
2019/06/17 Python
TensorFlow的环境配置与安装教程详解(win10+GeForce GTX1060+CUDA 9.0+cuDNN7.3+tensorflow-gpu 1.12.0+python3.5.5)
2020/06/22 Python
Python dict的常用方法示例代码
2020/06/23 Python
Python3爬虫mitmproxy的安装步骤
2020/07/29 Python
销售找工作求职信
2013/12/20 职场文书
关于读书的演讲稿
2014/05/07 职场文书
幼儿园小班见习报告
2014/10/31 职场文书
2014-2015学年工作总结
2014/11/27 职场文书
人工作失职检讨书
2015/05/05 职场文书
论文致谢词范文
2015/05/14 职场文书
2015领导干部廉洁自律工作总结
2015/07/23 职场文书
培训后的感想
2015/08/07 职场文书
Js类的构建与继承案例详解
2021/09/15 Javascript
Win11 引入 Windows 365 云操作系统,适应疫情期间混合办公模式:启动时直接登录、模
2022/04/06 数码科技
MySQL串行化隔离级别(间隙锁实现)
2022/06/16 MySQL