複製代碼 代碼如下:/**
* 格式化數字
* Author : Z,Mingyu
* 參數:
* prmNum (Number) : 要格式化的數字
* prmPtn (String) : 格式化規則,例如:#,##0.00
* * prmNullValue : 當要格式化的數字為null、空或非數字時,返回的結果。預設為0
*/
function formatNum(prmNum,prmPtn,prmNullValue){
var nullValue = prmNullValue ? prmNullValue : 0;
if(prmNum == "" || prmNum == null) return nullValue;
prmNum = prmNum.replace(/\,/g,"");
if(isNaN(prmNum)) return nullValue;
if(prmPtn == "" || prmPtn == null) return prmNum;
var ptnLen = prmPtn.length;
var pointIndex = prmPtn.indexOf(".");
var groupIndex = prmPtn.indexOf(",");
var pointLen = (pointIndex == -1 ? 0 : ptnLen - pointIndex - 1);
prmNum = parseFloat(prmNum).toFixed(pointLen) + "";
if(groupIndex != -1){
if(pointIndex == -1) pointIndex = ptnLen;
var len = pointIndex - groupIndex - 1;
var reg = new RegExp("(-?\\d+)(\\d{"+len+"})");
while(reg.test(prmNum)) prmNum = prmNum.replace(reg,"$1,$2");
}
return prmNum;
}