本文共 603 字,大约阅读时间需要 2 分钟。
最近做的促销系统涉及了很多元和分的转化,之前有过分转元/100和元转发*100发现这样处理有些数据会丢失精度,下面是我写的方法可以解决是精度问题//分转元penny2yuan = function(penny){ //排除非数字 if(isNaN(penny)){ return '0.00'; } //排除小于1的数 if(parseInt(penny) < 1){ return '0.00'; } //排除带小数点的数 var penny_str = penny + ''; if(penny_str.indexOf('.') > -1){ return '0.00'; } var penny_len = penny_str.length; if(penny_len == 1){ return '0.0' + penny_str; }else if(penny_len == 2){ return '0.' + penny_str; }else{ return penny_str.substring(0, penny_len - 2) + '.' + penny_str.substring(penny_len - 2); }}//元转分function yuantoFenney(val){ return parseInt(100 * (val * 1000) / 1000);}
转载地址:http://cgztb.baihongyu.com/