最近做的促销系统涉及了很多元和分的转化,之前有过分转元/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);
}
元和分单位转换
最新推荐文章于 2024-11-04 18:23:42 发布