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'> </div ></c:if>
二、
在HTML的textarea输入域中,按一个Enter键,对应的控制字符为“
”,即“回车换行”。而不是“
”,即“换行回车”。
因此在一般的编辑器中一个”Enter”键代表着“回车换行”,而非“换行回车”,至少在textarea域中是这样的。