Js四则运算函数代码


Posted in Javascript onJuly 21, 2012
//除法函数,用来得到精确的除法结果 
//说明:javascript的除法结果会有误差,在两个浮点数相除的时候会比较明显。这个函数返回较为精确的除法结果。 
//调用:accDiv(arg1,arg2) 
//返回值:arg1除以arg2的精确结果 
function accDiv(arg1,arg2){ 
var t1=0,t2=0,r1,r2; 
try{t1=arg1.toString().split(".")[1].length}catch(e){} 
try{t2=arg2.toString().split(".")[1].length}catch(e){} 
with(Math){ 
r1=Number(arg1.toString().replace(".","")); 
r2=Number(arg2.toString().replace(".","")); 
return (r1/r2)*pow(10,t2-t1); 
} 
} 
//给Number类型增加一个div方法,调用起来更加方便。 
Number.prototype.div = function (arg){ 
return accDiv(this, arg); 
}; 
//乘法函数,用来得到精确的乘法结果 
//说明:javascript的乘法结果会有误差,在两个浮点数相乘的时候会比较明显。这个函数返回较为精确的乘法结果。 
//调用:accMul(arg1,arg2) 
//返回值:arg1乘以arg2的精确结果 
function accMul(arg1,arg2) 
{ 
var m=0,s1=arg1.toString(),s2=arg2.toString(); 
try{m+=s1.split(".")[1].length}catch(e){} 
try{m+=s2.split(".")[1].length}catch(e){} 
return Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m); 
} 
//给Number类型增加一个mul方法,调用起来更加方便。 
Number.prototype.mul = function (arg){ 
return accMul(arg, this); 
}; 
//加法函数,用来得到精确的加法结果 
//说明:javascript的加法结果会有误差,在两个浮点数相加的时候会比较明显。这个函数返回较为精确的加法结果。 
//调用:accAdd(arg1,arg2) 
//返回值:arg1加上arg2的精确结果 
function accAdd(arg1,arg2){ 
var r1,r2,m; 
try{r1=arg1.toString().split(".")[1].length;}catch(e){r1=0;} 
try{r2=arg2.toString().split(".")[1].length;}catch(e){r2=0;} 
m=Math.pow(10,Math.max(r1,r2)); 
return (arg1*m+arg2*m)/m; 
} 
//给Number类型增加一个add方法,调用起来更加方便。 
Number.prototype.add = function (arg){ 
return accAdd(arg,this); 
}; 
//减法函数 
function accSub(arg1,arg2){ 
var r1,r2,m,n; 
try{ 
r1=arg1.toString().split(".")[1].length; 
}catch(e){ 
r1=0; 
} 
try{ 
r2=arg2.toString().split(".")[1].length; 
}catch(e){ 
r2=0; 
} 
m=Math.pow(10,Math.max(r1,r2)); 
//last modify by deeka 
//动态控制精度长度 
n=(r1>=r2)?r1:r2; 
return ((arg2*m-arg1*m)/m).toFixed(n); 
} 
///给number类增加一个sub方法,调用起来更加方便 
Number.prototype.sub = function (arg){ 
return accSub(arg,this); 
};
Javascript 相关文章推荐
js实现DIV的一些简单控制
Jun 04 Javascript
javascript中取前n天日期的两种方法分享
Jan 26 Javascript
jquery mobile动态添加元素之后不能正确渲染解决方法说明
Mar 05 Javascript
浅谈Javascript中深复制
Dec 01 Javascript
jquery实现鼠标滑过显示提示框的方法
Feb 05 Javascript
JavaScript中的函数(二)
Dec 23 Javascript
深入理解JavaScript函数参数(推荐)
Jul 26 Javascript
Vue.js实现简单ToDoList 前期准备(一)
Dec 01 Javascript
详解Angular Reactive Form 表单验证
Jul 06 Javascript
微信小程序实践之动态控制组件的显示/隐藏功能
Jul 18 Javascript
Nuxt配合Node在实际生产中的应用详解
Aug 07 Javascript
js实现前端界面导航栏下拉列表
Aug 27 Javascript
Javascript对象中关于setTimeout和setInterval的this介绍
Jul 21 #Javascript
javascript算法题 求任意一个1-9位不重复的N位数在该组合中的大小排列序号
Jul 21 #Javascript
Javascript中找到子元素在父元素内相对位置的代码
Jul 21 #Javascript
分享XmlHttpRequest调用Webservice的一点心得
Jul 20 #Javascript
基于jquery的可多选的下拉列表框
Jul 20 #Javascript
基于jquery的DIV随滚动条滚动而滚动的代码
Jul 20 #Javascript
最佳6款用于移动网站开发的jQuery 图片滑块插件小结
Jul 20 #Javascript
You might like
PHP+javascript液晶时钟
2006/10/09 PHP
typecho插件编写教程(五):核心代码
2015/05/28 PHP
php实现购物车功能(下)
2016/01/05 PHP
zen cart实现订单中增加paypal中预留电话的方法
2016/07/12 PHP
PHP实现Google plus的好友拖拽分组效果
2016/10/21 PHP
070823更新的一个[消息提示框]组件 兼容ie7
2007/08/29 Javascript
豆瓣网的jquery代码实例
2008/06/15 Javascript
javascript实现动态侧边栏代码
2014/02/19 Javascript
巧用局部变量提升javascript性能
2014/02/24 Javascript
JavaScript中匿名、命名函数的性能测试
2014/09/04 Javascript
jQuery简单实现隐藏以及显示特效
2015/02/26 Javascript
浅谈js中的闭包
2015/03/16 Javascript
Angular 4依赖注入学习教程之简介(一)
2017/06/04 Javascript
微信小程序-getUserInfo回调的实例详解
2017/10/27 Javascript
Javascript实现动态时钟效果
2018/11/17 Javascript
Vue实现导航栏菜单
2020/08/19 Javascript
netbeans7安装python插件的方法图解
2013/12/24 Python
python使用正则表达式检测密码强度源码分享
2014/06/11 Python
Python的MongoDB模块PyMongo操作方法集锦
2016/01/05 Python
解读python如何实现决策树算法
2018/10/11 Python
padas 生成excel 增加sheet表的实例
2018/12/11 Python
Django model select的多种用法详解
2019/07/16 Python
Django shell调试models输出的SQL语句方法
2019/08/29 Python
在tensorflow中实现去除不足一个batch的数据
2020/01/20 Python
解决python -m pip install --upgrade pip 升级不成功问题
2020/03/05 Python
jupyter notebook中美观显示矩阵实例
2020/04/17 Python
使用OpenCV获取图像某点的颜色值,并设置某点的颜色
2020/06/02 Python
Python Matplotlib绘图基础知识代码解析
2020/08/31 Python
Python3.9最新版下载与安装图文教程详解(Windows系统为例)
2020/11/28 Python
Snapfish爱尔兰:在线照片打印和个性化照片礼品
2018/09/17 全球购物
党的群众路线教育实践活动批评与自我批评
2014/02/16 职场文书
2014幼儿园保育员工作总结
2014/11/10 职场文书
小学生通知书评语
2014/12/31 职场文书
护理心得体会范文
2016/01/22 职场文书
2019经典广告词集锦!
2019/07/02 职场文书
浅谈python中的多态
2021/06/15 Python