JavaScript格式化金额及格式化输出

本文介绍了如何使用JavaScript函数格式化金额,并提供了两种不同的输出方式,适用于不同场景。

格式化金额的函数

/*
 * 格式化金额,
 * num为十进制Number类型的原值,
 * n为保留的小数位数
 * return 格式化后的金额字符串
 */
function formatNum(num, n){
    
    var numStr = num.toString(),
        pointIndex = numStr.indexOf('.'),
        beforePoint,
        afterPoint;
    if(pointIndex < 0){
        beforePoint = numStr;
        afterPoint = '';
    }else{
        beforePoint = numStr.substring(0, pointIndex);
        if(typeof n == 'undefined'){
            afterPoint = numStr.substring(pointIndex);
        }else{
            afterPoint = numStr.substring(pointIndex, pointIndex + n + 1);
        }
    }
    var re = /(-?\d+)(\d{3})/;
    while(re.test(beforePoint)){
        beforePoint = beforePoint.replace(re,"$1,$2");
    }
    return beforePoint + afterPoint;
}

格式化输出

/*
 * 格式化输出,
 * str为输入的字符串,变量用{}包括
 * obj为参数对象
 */
function formatStr(str, obj){
    for(var name in obj){
        str = str.split('{' + name + '}').join(obj[name]);
    }
    return str;
}

另一种格式化输出

/*
 * 格式化输出,
 * str为输入的字符串,变量用{}包括
 * arr为参数数组
 */
function formatStr(str, arr){
    var i,len = arr.length;
    for(i = 0; i < len; i++){
        str = str.split('{' + i + '}').join(arr[i]);
    }
    return str;
}

  

  

转载于:https://www.cnblogs.com/realwall/archive/2011/10/19/2217884.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值