JavaScript tips - 数値をカンマ区切り文字列に変換しよう

phi phi on javascript

Code

正規表現で一発です.

var delimit = function(n) {  
  return String(n).replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1,');
};

ちょっと簡易的なやつなので小数点以下の桁数が増えるとそっちにもカンマが付いちゃいますが大抵上手くいくと思います.

Test

console.log( delimit(1) );          // => 1  
console.log( delimit(123) );        // => 123  
console.log( delimit(123456) );     // => 123,456  
console.log( delimit(123456789) );  // => 123,456,789  
console.log( delimit(-123456) );    // => -123,456  
console.log( delimit(123456.78) );  // => 123,456.78  
console.log( delimit(-123456.789) );// => -123,456.789  

Demo

Ref