JavaScript带小数金额计算
来源:互联网 发布:mysql bin是什么文件 编辑:程序博客网 时间:2024/05/14 06:27
///格式化金额///将数字转换成逗号分隔的样式,保留两位小数s:value,n:小数位数 function fmoney(s, n) { n = n > 0 && n <= 20 ? n : 2; s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + ""; var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1]; t = ""; for (i = 0; i < l.length; i++) { t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : ""); } return t.split("").reverse().join("") + "." + r;}//还原金额 function rmoney(s) { return parseFloat(s.replace(/[^\d\.-]/g, ""));}///带小数乘法运算///乘法函数,用来得到精确的乘法结果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)}//加法函数,用来得到精确的加法结果 //说明:javascript的加法结果会有误差,在两个浮点数相加的时候会比较明显。这个函数返回较为精确的加法结果。 //调用:accAdd(arg1,arg2) //返回值:arg1加上arg2的精确结果 function accAdd(arg1, arg2) { var r1, r2, m, c; try { r1 = arg1.toString().split(".")[1].length } catch (e) { r1 = 0 } try { r2 = arg2.toString().split(".")[1].length } catch (e) { r2 = 0 } c = Math.abs(r1 - r2); m = Math.pow(10, Math.max(r1, r2)) if (c > 0) { var cm = Math.pow(10, c); if (r1 > r2) { arg1 = Number(arg1.toString().replace(".", "")); arg2 = Number(arg2.toString().replace(".", "")) * cm; } else { arg1 = Number(arg1.toString().replace(".", "")) * cm; arg2 = Number(arg2.toString().replace(".", "")); } } else { arg1 = Number(arg1.toString().replace(".", "")); arg2 = Number(arg2.toString().replace(".", "")); } return (arg1 + arg2) / m}//给Number类型增加一个add方法,调用起来更加方便。Number.prototype.add = function (arg) { return accAdd(arg, this);}///向上取整,有小数就整数部分加1 function mathceil(arg1) { Math.ceil(arg1);}///向下取整,有小数就整数部分加1 function mathfloor(arg1) { Math.floor(arg1);}///四舍五入function mathround(arg1) { Math.round(arg1);}
- JavaScript带小数金额计算
- javascript 计算小数错误
- JavaScript计算小数
- javascript设置金额样式转换 金额保留两位小数
- JavaScript小数计算精度丢失问题解决方案
- 金额计算
- php处理金额整数转浮点带千分位的小数
- 自定义输入输出一个带分隔符,保留两位小数的金额文本
- javascript正确计算小数(保留两位小数,多位小数)
- javascript计算小数保留两位小数,多位小数的方法
- javascript计算小数保留两位小数,多位小数的方法
- 金额小数转换成中文大写金额
- java获取金额小数位数
- 金额保留两位小数
- Javascript计算浮点数乘积出现多位小数解决方案
- javascript数学计算以后保留两位小数
- javascript关于小数计算的结果会出现小数的位数变多的现象
- 合计金额计算
- 如何从SQLServer类型转换成Oracle对应的数据类型
- Eclipse 引用扩展点、收集扩展点
- 黑马程序员 多线程(二)
- 如何在windows下安装linux
- CSS手册布局overflow
- JavaScript带小数金额计算
- 将DataRow[]转换成DataTable
- 通过游戏学java(适合初学者)
- 真烦阿
- Android开发:对View DrawingCache的理解
- Linux Device和Driver注册过程,以及Probe的时机
- 笔记:变量命名规则
- 没有编译器,没有工具OU就是坨屎
- apt用法整理