javascript 四则运算精度修正函数代码


Posted in Javascript onMay 31, 2010

函数代码如下:

/* 
* 四则运算精度修正函数 
* m 数值1(number) 
* n 数值2(number) 
* op 操作符(string) 
*/ 
function fixMath(m, n, op) { 
var a = (m+ " "); 
var b = (n+ " "); 
var x = 1; 
var y = 1; 
var c = 1; 
if(a.indexOf( ". ")> 0) { 
x = Math.pow(10, a.length - a.indexOf( ". ") - 1); 
} 
if(b.indexOf( ". ")> 0) { 
y = Math.pow(10, b.length - b.indexOf( ". ") - 1); 
} 
switch(op) 
{ 
case '+ ': 
case '- ': 
c = Math.max(x,y); 
m = Math.round(m*c); 
n = Math.round(n*c); 
break; 
case '* ': 
c = x*y 
m = Math.round(m*x); 
n = Math.round(n*y); 
break; 
case '/ ': 
c = Math.max(x,y); 
m = Math.round(m*c); 
n = Math.round(n*c); 
c = 1; 
break; 
} 
return eval( "( "+m+op+n+ ")/ "+c); 
}

函数用法如下:

fixMath(2.3, 1.9, '* ') 
fixMath(1.98, 1.9, '- ') 
fixMath(83.50, 74.15, '- ')
Javascript 相关文章推荐
javascript调试说明
Jun 07 Javascript
理解Javascript_15_作用域分配与变量访问规则,再送个闭包
Oct 20 Javascript
Javascript 修改String 对象 增加去除空格功能(示例代码)
Nov 30 Javascript
6种javascript显示当前系统时间代码
Dec 01 Javascript
JavaScript实现iframe自动高度调整和不同主域名跨域
Feb 27 Javascript
解决bootstrap导航栏navbar在IE8上存在缺陷的方法
Jul 01 Javascript
图文详解JavaScript的原型对象及原型链
Aug 02 Javascript
分分钟玩转Vue.js组件
Oct 25 Javascript
Angular2利用组件与指令实现图片轮播组件
Mar 27 Javascript
bootstrap+jQuery 实现下拉菜单中复选框全选和全不选效果
Jun 12 jQuery
vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)
Nov 05 Javascript
动态实现element ui的el-table某列数据不同样式的示例
Jan 22 Javascript
ASP 过滤数组重复数据函数(加强版)
May 31 #Javascript
javascript 子窗体父窗体相互传值方法
May 31 #Javascript
js post方式传递提交的实现代码
May 31 #Javascript
JS 类型转换常见方法小结
May 31 #Javascript
javascript 传统事件模型构造的事件监听器实现代码
May 31 #Javascript
LazyLoad 延迟加载(按需加载)
May 31 #Javascript
基于jquery的气泡提示效果
May 31 #Javascript
You might like
用php来改写404错误页让你的页面更友好
2013/01/24 PHP
PHP扩展模块memcached长连接使用方法分析
2014/12/24 PHP
Laravel框架中实现使用阿里云ACE缓存服务
2015/02/10 PHP
ThinkPHP中使用Ueditor富文本编辑器
2015/09/02 PHP
php读取本地json文件的实例
2018/03/07 PHP
php插入mysql数据返回id的方法
2018/05/31 PHP
JavaScript入门教程(1) 什么是JS
2009/01/31 Javascript
几个比较经典常用的jQuery小技巧
2010/03/01 Javascript
写JQuery插件的基本知识
2013/11/25 Javascript
SeaJS入门教程系列之使用SeaJS(二)
2014/03/03 Javascript
javascript异步处理工作机制详解
2015/04/13 Javascript
js removeChild 方法深入理解
2016/08/16 Javascript
浅谈JS中的三种字符串连接方式及其性能比较
2016/09/02 Javascript
自学实现angularjs依赖注入
2016/12/20 Javascript
bootstrap模态框嵌套、tabindex属性、去除阴影的示例代码
2017/10/17 Javascript
Angular使用操作事件指令ng-click传多个参数示例
2018/03/27 Javascript
JavaScript设计模式之模板方法模式原理与用法示例
2018/08/07 Javascript
用npm-run实现自动化任务的方法示例
2019/01/14 Javascript
vue自定义switch开关组件,实现样式可自行更改
2019/11/01 Javascript
[01:04:31]DOTA2-DPC中国联赛定级赛 iG vs Magma BO3第二场 1月8日
2021/03/11 DOTA
Python中处理unchecked未捕获异常实例
2015/01/17 Python
python实现简单socket程序在两台电脑之间传输消息的方法
2015/03/13 Python
Python中遇到的小问题及解决方法汇总
2017/01/11 Python
python递归打印某个目录的内容(实例讲解)
2017/08/30 Python
python logging模块的使用总结
2019/07/09 Python
Python 分享10个PyCharm技巧
2019/07/13 Python
Pytorch加载部分预训练模型的参数实例
2019/08/18 Python
详解python播放音频的三种方法
2019/09/23 Python
css3 position fixed固定居中问题解决方案
2014/08/19 HTML / CSS
CSS3 filter(滤镜)实现网页灰色或者黑色模式的示例代码
2021/02/24 HTML / CSS
使用Html5多媒体实现微信语音功能
2019/07/26 HTML / CSS
人事部经理岗位职责
2014/03/07 职场文书
低碳环保口号
2014/06/12 职场文书
承诺书模板大全
2015/05/04 职场文书
Pytorch中TensorBoard及torchsummary的使用详解
2021/05/12 Python
Redis 配置文件重要属性的具体使用
2021/05/20 Redis