首页 > 技术文章 > javascript 数字转金额

TonyLearning 2017-03-22 15:36 原文

二话不说直接上代码

String.prototype.moneyformat=function(){

  var val=this;  

  if (val == 0) {//判断是否为空,0,null等等 统一返回

    return '0.00';
  }
  val=parseFloat(val).toFixed(2);//转float保留两位小数
  var re = /(\d{1,3})(?=(\d{3})+(?:$|\D))/g;//定义正则
  var _val = val.replace(/^0|,|[^0-9.-]/g, '').replace(/\.[\d]{1,}/, function ($1, $2) {
    var _str = $1.replace(/\./g, '');
    return '.' + _str.substr(0, (_str.length > 2 ? 2 : _str.length));
  });
  return _val.replace(re, '$1,');

}

推荐阅读