JS函数 金钱转换为大写格式 壹佰伍拾柒圆伍角陆分这样

function formatMoney(mnum)
{
 var mnum = parseFloat(mnum);
 var strOutput="",strTemp="",strInTemp='';
 var unitArray = new Array("圆万亿","仟佰拾","零壹贰叁肆伍陆柒捌玖");
 var mnumArray = mnum.toString().split('.');
 var integralnum = mnumArray[0];
 var integrallen = integralnum.length;
 var decimalnum = (mnum.toString().indexOf('.')>=0) ? mnumArray[1].substr(0, 2) : '0';
 var decimallen = decimalnum.length;
 var ints = parseInt(integrallen/4);
 var inty = integrallen%4;
 if (ints>3 || (ints==3 && inty>0)) return "超出范围";
 if (inty>0)
 {
  ints++;
  integralnum = "0000".substr(inty)+integralnum;
  integrallen = integralnum.length;
 }
 var i = 0;
 while (i<integrallen)
 {
  var strOutTemp = "";
  strTemp = integralnum.substr(i, 4);
  i += 4;
  for (var j=0; j<4; j++)
  {
   strInTemp = parseInt(strTemp.substr(j, 1));
   strOutTemp += unitArray[2].substr(strInTemp, 1);
   if (strInTemp>0 && j<3) strOutTemp += unitArray[1].substr(j, 1);
  }
  strOutTemp = strOutTemp.replace(/零+$/, "");
  ints--;
  if (strOutTemp!="") strOutTemp += unitArray[0].substr(ints, 1);
  if (strTemp.substr(3,1)=='0') strOutTemp += "零";
  strOutput += strOutTemp;
 }
 strOutput = strOutput.replace(/零+/g, "零").replace(/^零/, "").replace(/零$/, "");
 if (strOutput=="圆") strOutput = "";
 if (decimallen==2)
 {
  strOutput += (decimalnum.charAt(0)!='0') ? unitArray[2].substr(parseInt(decimalnum.charAt(0)), 1)+"角" : "零";
  if (strOutput=="零") strOutput = "";
  strOutput += unitArray[2].substr(parseInt(decimalnum.charAt(1)), 1)+"分";
 }
 else
 {
  if (decimalnum!='0') strOutput += unitArray[2].substr(parseInt(decimalnum), 1)+"角";
  if (strOutput!="") strOutput += "整";
 }
 if (strOutput=="") strOutput = "金额为零";
 return strOutput;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值