将数字转换为大写(保留小数点后面2位)

function getBigMoney(num){
    var preStr="";
    if(num-0<0){
        num=(0-num).toString();
        preStr="负";
    }
    var strOutput = ""; 
      var strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分'; 
      num += "00"; 
      var intPos = num.indexOf('.'); 
      if (intPos >= 0){
        num = num.substring(0, intPos) + num.substr(intPos + 1, 2);
    } 
      strUnit = strUnit.substr(strUnit.length - num.length); 
      for (var i=0; i < num.length; i++){ 
        strOutput += '零壹贰叁肆伍陆柒捌玖'.substr(num.substr(i,1),1) + strUnit.substr(i,1);
    } 
    strOutput = strOutput.replace(/零角零分$/, '整').replace(/零[仟佰拾]/g, '零').replace(/零{2,}/g, '零').replace(/零([亿|万])/g, '$1').replace(/零+元/, '元').replace(/亿零{0,3}万/, '亿').replace(/^元/, "零元");
    return preStr+strOutput;
}

ps方法(

indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
stringObject 中的字符位置是从 0 开始的。
 
substring(start,stop) 方法用于提取字符串中介于两个指定下标之间的字符。
substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。
 
substr(start,length) 方法可在字符串中抽取从 start 下标开始的指定数目的字符。

ps表达式:

1.表达式加上参数g之后,表明可以进行全局匹配。如果加入g,则第一次执行也返回第一个匹配,再执行返回第二个匹配,依次类推。

不加入g,则只返回第一个匹配,无论执行多少次均是如此

2.字符^
意义:表示匹配的字符必须在最前边。
例如:/^A/不匹配"an A,"中的’A’,但匹配"An A."中最前面的’A’。

3.字符$
意义:与^类似,匹配最末的字符。
例如:/t$/不匹配"eater"中的’t’,但匹配"eat"中的’t’。

调用:

function myStr(){
    var str="";
    str=str+getBigMoney("111112.222");
    document.getElementById('divId').innerHTML=str;
}

html简单代码:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> //meta中的content 属性始终要和 name 属性或 http-equiv 属性一起使用。

........

<body onload="myStr();">
<div id="divId" align="center">
</div>
</body>

结果:

 壹拾壹万壹仟壹佰壹拾贰元贰角贰分

===========

顺手牵羊:

一、css分页符:
.PageNext {page-break-after: always;height :1px;}
 
jsp页面的部分代码:
<c:forEach var="item" items="${list}" varStatus="s">
<c:if test="${s.index>0}"><div class='PageNext'> &nbsp;</div ></c:if>
二、
在HTML的textarea输入域中,按一个Enter键,对应的控制字符为“\r\n”,即“回车换行”。而不是“\n\r”,即“换行回车”。
因此在一般的编辑器中一个”Enter”键代表着“回车换行”,而非“换行回车”,至少在textarea域中是这样的。
posted @ 2016-06-12 10:43  冷面书生_坤  阅读(2201)  评论(0编辑  收藏  举报