Skip to content

Instantly share code, notes, and snippets.

@jikeytang
Created May 19, 2014 23:42
Show Gist options
  • Save jikeytang/b810d94ecc62322ac4d1 to your computer and use it in GitHub Desktop.
Save jikeytang/b810d94ecc62322ac4d1 to your computer and use it in GitHub Desktop.
[ Javascript ] - 20140520-题目2
如何将阿拉伯数字每三位一逗号分隔,如:15000000转化为15,000,000。
回复时注意加上下面这句话,才会有语法高亮或格式缩进。
```javascript
@jiangtao
Copy link

'1500000000000'.replace(/\B(\d{3})/g, ',' + '$1');

@sunnylost
Copy link

//缺点:数字受 Number.MAX_SAFE_INTEGER 限制,还是用正则操作字符串更好。
1500000000000..toLocaleString();

@jiangtao
Copy link

jiangtao commented Jun 4, 2014

sunnylost牛逼

@wsgouwan
Copy link

var num = 1500000000000;
            temp = num +'';
            temp = temp.split('').reverse();
            for(var i = 0 ; i < temp.length; i ++){
                if(i!=0 && i%3 == 0){
                    temp[i] = temp[i] + ',';
                }
            }
            temp = temp.reverse().join('')
            console.log( temp );   
            //   上面的正则太强大了  容我细细品味

@rambo-panda
Copy link

var cut_str_to_bankNum = function(num_str, delimiter){
    num_str = num_str.replace(/\s/g, '');
    if(/^\d+$/.test(num_str)){
        delimiter = delimiter || ',';
        num_str = num_str.split('').reverse();
        return num_str.join('').replace(/(\d{3})/g, "$1"+delimiter).split('').reverse().join('');
    }
};

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment