<option id="tpnx7"><p id="tpnx7"><pre id="tpnx7"></pre></p></option>
<output id="tpnx7"></output>
<output id="tpnx7"><ruby id="tpnx7"></ruby></output>
    <output id="tpnx7"></output><acronym id="tpnx7"><button id="tpnx7"><div id="tpnx7"></div></button></acronym><code id="tpnx7"><menuitem id="tpnx7"></menuitem></code>

    首页 > 上网技巧 > 电脑小技巧 > 原生js实现数字三位逗号,分隔 js实现货币格式...

    原生js实现数字三位逗号,分隔 js实现货币格式表示法

    时间:2018-12-26 09:56 作者:QQ地带 我要评论

    原生js实现数字三位逗号,分隔。js实现支持货币格式表示法
     
     
     
    方法一:
    function setMoney(num){//取整,三行逗号隔开
    return parseFloat(num).toLocaleString();
    }
    var m=setMoney(123456.7889);
    console.log(m);//输出123,456.789
    说明:toLocaleString在将数字转换为字符串的同时,会使用三位分节法进行显示。如果是浮点数,只只保留了小数点后三位数,并进行了四舍五入。
     
    注意:在IE下,浮动数会默认取消,输出结果为123,456
     
     
     
    方法二:
    function setnum(num){//取整,三行逗号隔开
    /*//获取小数位
        var right=String(num).split('.')[1];
        right=(right==undefined)?'':right;
        */
       num=Math.floor(num);//向下取整,
       num=num.toString(); 
       var len=num.length,
        r=len%3;
       if(len<=3){
        return num;
       }
       num=r>0?num.slice(0,r)+","+num.slice(r,len).match(/\d{3}/g).join(","):num.slice(r,len).match(/\d{3}/g).join(","); 
       return num; 
    };
    var m=setnum(123456.789);
    console.log(m);//输出123,456
    说明:slice 方法用于截取字符串中的一部分并返回该部分字符串。match方式代表正则表达式的匹配,最后通过join将元素放入一个字符串,用逗号隔开。
     
     
     
    方法三
    function setnum(num){//保留2位小数,如果没小数位自动补全.00
        if(num && num!=null){  
            num = String(num);  
            var left=num.split('.')[0],right=num.split('.')[1];  
            right = right ? (right.length>=2 ? '.'+right.substr(0,2) : '.'+right+'0') : '.00';  
            var temp = left.split('').reverse().join('').match(/(\d{1,3})/g);  
            return (Number(num)<0?"-":"") + temp.join(',').split('').reverse().join('')+right;  
        }else if(num===0){   //注意===在这里的使用,如果传入的num为0,if中会将其判定为boolean类型,故而要另外做===判断  
            return '0.00';  
        }else{  
            return "";  
        }  
    };  
    var m=setnum(123456.789);
    console.log(m);//输出123,456.78
    m=setnum(123456);
    console.log(m);//输出123,456.00
    如果要将123,456.78转换为123456.78呢?如下:
     
    function undonum(num){  
        if(num && num!=null){  
            num = String(num);  
            var group = num.split('.');  
            var left = group[0].split(',').join('');  
            return Number(left+"."+group[1]);  
        }else{  
            return "";  
        }  
    }; 
    var m=undonum('123,456.789');
    console.log(m);//输出123456.789

    标签: JS
    顶一下
    (0)
    0%
    踩一下
    (0)
    0%

    Google提供的广告

    广东十分快乐开奖结果
    <option id="tpnx7"><p id="tpnx7"><pre id="tpnx7"></pre></p></option>
    <output id="tpnx7"></output>
    <output id="tpnx7"><ruby id="tpnx7"></ruby></output>
    <output id="tpnx7"></output><acronym id="tpnx7"><button id="tpnx7"><div id="tpnx7"></div></button></acronym><code id="tpnx7"><menuitem id="tpnx7"></menuitem></code>

    <option id="tpnx7"><p id="tpnx7"><pre id="tpnx7"></pre></p></option>
    <output id="tpnx7"></output>
    <output id="tpnx7"><ruby id="tpnx7"></ruby></output>
    <output id="tpnx7"></output><acronym id="tpnx7"><button id="tpnx7"><div id="tpnx7"></div></button></acronym><code id="tpnx7"><menuitem id="tpnx7"></menuitem></code>

    3d近期500期走势图带坐标 今期免费特码资料 今晚三肖中特一 福彩开奖是真的吗 河北快3开奖走势图一定牛 中彩票的短信样本 山东十一选五网易彩票结果开奖查询 捕鱼达人单机游戏下载 安徽十一选五开奖走势 甘肃快3一定牛形态走势 重庆幸运农场走势图统计报表 搜狐彩票红包 胜分差有几种 陕西快乐10分玩法 通比牛牛有庄家吗