js 浮点运算出现的精度丢失问题
2016-03-25 09:56
771 查看
var myf='6.202555'; myf=Number(myf).toFixed(2);//使用方法 Number.prototype.toFixed = function(scale) { var s = this + ""; if (!scale) scale = 0; if (s.indexOf(".") == -1) s += "."; s += new Array(scale + 1).join("0"); if (new RegExp("^(-|\\+)?(\\d+(\\.\\d{0," + (scale + 1) + "})?)\\d*$").test(s)) { var s = "0" + RegExp.$2, pm = RegExp.$1, a = RegExp.$3.length, b = true; if (a == scale + 2) { a = s.match(/\d/g); if (parseInt(a[a.length - 1]) > 4) { for (var i = a.length - 2; i >= 0; i--) { a[i] = parseInt(a[i]) + 1; if (a[i] == 10) { a[i] = 0; b = i != 1; }else { break; } } } s = a.join("").replace(new RegExp("(\\d+)(\\d{" + scale + "})\\d$"), "$1.$2"); } if (b){ s = s.substr(1); } return (pm + s).replace(/\.$/, ""); } return this + ""; }
相关文章推荐
- js根据url得到参数值
- JavaScript中getBoundingClientRect()方法详解
- Windows 系统下json 格式的日志文件发送到elasticsearch
- javascript-2.function(1)
- JS定义二维数组的三种方法
- 很赞的js许愿墙 类似后盾网
- js 判断传递的元素是否为空
- JavaScript的事件代理
- Angular JS中自定义标签 属性绑定的解释
- document.cookie.indexof的解释
- JS获取整个网页html代码
- JavaScript修改作用域外变量的方法
- 十大javaScript框架
- JS根据userAgent值来判断浏览器的类型及版本
- JavaScript 2048 游戏实例代码(简单易懂)
- js “||”、“&&”的灵活运用
- 详解Javascript的继承实现
- Three.js框架,菜鸟上路
- javascript-1.document.getElementById
- JS的基础类型与引用类型