js中精确计算加法和减法示例


Posted in Javascript onMarch 28, 2014

/精确计算加法和减法。例如0.1+0.2=0.3或 0.1-0.2=-0.1

function addFn(dataOne,dataTwo){ var dataOneInt=dataOne.toString().split(".")[0]; 
var dataOneFloat=""; 
var dataTwoInt=dataTwo.toString().split(".")[0]; 
var dataTwoFloat=""; 
var lengthOne=0; 
var lengthTwo=0; 
var maxlength=0; 
if(dataOne.toString().split(".").length==2){ 
dataOneFloat=dataOne.toString().split(".")[1]; 
lengthOne=dataOneFloat.toString().length; 
} 
if(dataTwo.toString().split(".").length==2){ 
dataTwoFloat=dataTwo.toString().split(".")[1]; 
lengthTwo=dataTwoFloat.toString().length; 
} 
maxLength=Math.max(lengthOne,lengthTwo); 
for(var i=0;i<maxLength-lengthOne;i++){ 
dataOneFloat+="0"; 
} 
for(var i=0;i<maxLength-lengthTwo;i++){ 
dataTwoFloat+="0"; 
} 
/** 
*对两个数据进行倍数放大 
*使其都变为整数。因为整数计算 
*比较精确。 
*/ 
var one=dataOneInt+""+dataOneFloat; 
var two=dataTwoInt+""+dataTwoFloat; 
//alert("dataOne:"+dataOne+" dataTwo:"+dataTwo +" one:"+one+" two:"+two); 
/** 
*数据扩大倍数后,经计算的到结果, 
*然后在缩小相同的倍数 
*进而得到正确的结果 
*/ 
var result= (Number(one)+Number(two))/Math.pow(10,maxLength); 
return result; 
}
Javascript 相关文章推荐
jQuery EasyUI中对表格进行编辑的实现代码
Jun 10 Javascript
写出高效jquery代码的19条指南
Mar 19 Javascript
jQuery的:parent选择器定义和用法
Jul 01 Javascript
JavaScript日期时间与时间戳的转换函数分享
Jan 31 Javascript
js实现Select头像选择实时预览代码
Aug 17 Javascript
js鼠标点击图片切换效果实现代码
Nov 19 Javascript
Jquery揭秘系列:ajax原生js实现详解(推荐)
Jun 08 Javascript
详解Javascript中prototype属性(推荐)
Sep 03 Javascript
Bootstrap CSS组件之面包屑导航(breadcrumb)
Dec 17 Javascript
微信小程序开发背景图显示功能
Aug 08 Javascript
jQuery 添加元素和删除元素的方法
Jul 15 jQuery
原生JS实现飞机大战小游戏
Jun 09 Javascript
查找页面中所有类为test的结点的方法
Mar 28 #Javascript
js 验证身份证信息有效性
Mar 28 #Javascript
JS中怎样判断undefined(比较不错的方法)
Mar 27 #Javascript
调用jQuery滑出效果时闪烁的解决方法
Mar 27 #Javascript
jquery选择符快速提取web表单数据示例
Mar 27 #Javascript
页面元素绑定jquery toggle后元素隐藏的解决方法
Mar 27 #Javascript
javascript怎么禁用浏览器后退按钮
Mar 27 #Javascript
You might like
收音机发烧友应当熟知的100条知识
2021/03/02 无线电
php文章内容分页并生成相应的htm静态页面代码
2010/06/07 PHP
使用Smarty 获取当前日期时间和格式化日期时间的方法详解
2013/06/18 PHP
php最简单的删除目录与文件实现方法
2014/11/28 PHP
PHP获取数组最后一个值的2种方法
2015/01/21 PHP
PHP会员找回密码功能的简单实现
2016/09/05 PHP
php中引用符号(&amp;)的使用详细介绍
2016/12/06 PHP
laravel实现上传图片并在页面显示的例子
2019/10/14 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
innerhtml用法 innertext用法 以及innerHTML与innertext的区别
2009/10/26 Javascript
JQuery设置文本框和密码框得到焦点时的样式
2013/08/30 Javascript
JavaScript如何实现组合列表框中元素移动效果
2016/03/01 Javascript
js+html5实现canvas绘制椭圆形图案的方法
2016/05/21 Javascript
javascript深拷贝(deepClone)详解
2016/08/24 Javascript
JS实现简单的tab切换选项卡效果
2016/09/21 Javascript
H5移动端适配 Flexible方案
2016/10/24 Javascript
JavaScript队列的应用实例详解【经典数据结构】
2017/04/12 Javascript
js如何获取网页所有图片
2017/05/12 Javascript
JavaScript canvas实现围绕旋转动画
2017/11/18 Javascript
Vue文件配置全局变量的实例
2018/09/06 Javascript
微信小程序云开发实现增删改查功能
2019/05/17 Javascript
js blob类型url的视频下载问题的解决
2019/11/29 Javascript
Python中使用OpenCV库来进行简单的气象学遥感影像计算
2016/02/19 Python
python读取oracle函数返回值
2016/07/18 Python
深入浅析python3中的unicode和bytes问题
2019/07/03 Python
Matplotlib使用Cursor实现UI定位的示例代码
2020/03/12 Python
python的Jenkins接口调用方式
2020/05/12 Python
如何实现一个python函数装饰器(Decorator)
2020/10/12 Python
Pytorch实验常用代码段汇总
2020/11/19 Python
CSS3绘制不规则图形的一些方法示例
2015/11/07 HTML / CSS
俄罗斯Sportmarket体育在线商店:用于旅游和户外活动
2019/11/12 全球购物
自我鉴定范文300字
2013/10/01 职场文书
公立医院改革实施方案
2014/03/14 职场文书
公司领导班子召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
入党积极分子考察意见
2015/06/02 职场文书
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android