Share This
//How to print a number with commas as thousands separators in JavaScript

How to print a number with commas as thousands separators in JavaScript

function numberWithCommas(x) {
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, “,”);
This is all you really need to know.

The regex uses 2 lookahead assertions: a positive one to look for any point in the string that has a multiple of 3 digits in a row after it, and a negative assertion to make sure that point only has exactly a multiple of 3 digits. The replacement expression puts a comma there.

For example, if you pass it “123456789.01”, the positive assertion will match every spot to the left of the 7 (since “789” is a multiple of 3 digits, “678” is a multiple of 3 digits, “567”, etc.). The negative assertion checks that the multiple of 3 digits does not have any digits after it. “789” has a period after it so it is exactly a multiple of 3 digits, so a comma goes there. “678” is a multiple of 3 digits but it has a “9” after it, so those 3 digits are part of a group of 4, and a comma does not go there. Similarly for “567”. “456789” is 6 digits, which is a multiple of 3, so a comma goes before that. “345678” is a multiple of 3, but it has a “9” after it, so no comma goes there. And so on. The “\B” keeps the regex from putting a comma at the beginning of the string.

@neu-rah mentioned that this function adds commas in undesirable places if there are more than 3 digits after the decimal point. If this is a problem, you can use this function:

function numberWithCommas(x) {
var parts = x.toString().split(“.”);
parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, “,”);
return parts.join(“.”);

credit :





    RiverCrane Vietnam sympathizes staffs' innermost feelings and desires and set up termly salary review policy. Performance evaluation is conducted in June and December and salary change is conducted in January and July every year. Besides, outstanding staffs receive bonus for their achievements periodically (monthly, yearly).


    In order to broaden staffs' view about technologies over the world, RiverCrane Vietnam set up policy to send staffs to Japan for study. Moreover, the engineers can develop their career paths in technical or management fields.


    Not only bringing chances to the staffs for their challenging, Rivercrane Vietnam also excites them with interesting annual trips. Exciting Gala Dinner with team building games will make the members of Rivercrane connected closer.


    Activities such as Team Building, Company Building, Family Building, Summer Holiday, Mid-Autum Festival, etc. will be the moments worthy of remembrance for each individual in the project or the pride when one introduces the company to his or her family, and shares the message "We are One".


    Rivercrane Vietnam ensures social insurance, medical insurance and unemployment insurance for staffs. The company commits to support staffs for any procedures regarding these insurances. In addition, other insurance policies are taken into consideration and under review.


    Support budget for activities related to education, entertainment and sports. Support fee for purchasing technical books. Support fee for getting engineering or language certificates. Support fee for joining courses regarding technical management. Other supports following company's policy, etc.


    © 2012 RiverCrane Vietnam. All rights reserved.