반응형
Overview of formatting numbers in JavaScript
JavaScript doesn't have many built-in methods to format numbers. Most of the time customized code needs to be used. Refer below for a couple rounding methods that JavaScript offers, then next up is some custom code I wrote to do more advanced formatting.
자바스크립트 포멧형을 찾았다. 숫자의 자리수나 소수자리 등을 지정하는 방법이 있다.
내가 정작 원하는 건 string.Format 같은것이 였는 데 없다.
javascript 도 분명히 있을텐데... 이상타.
그냥 하나 만들었다.
if ( str.length == 1 ) { str = '0' + str; }
무식하지만 format("0#", str)과 같은 혀과를 보여준다 ㅎㅎ
- Round to a certain number of places
- Add commas
- Details (Includes a function to format separators other than commas)
- Multi-functional number format script
Round to a certain number of places
For rounding decimals you can use the built-in JavaScript methods toFixed or toPrecision.
var num = 10; var result = num.toFixed(2); // result will equal 10.00 num = 930.9805; result = num.toFixed(3); // result will equal 930.981 num = 500.2349; result = num.toPrecision(4); // result will equal 500.2 num = 5000.2349; result = num.toPrecision(4); // result will equal 5000 num = 555.55; result = num.toPrecision(2); // result will equal 5.6e+2
Add commas
This functionality is not built into JavaScript, so custom code needs to be used. The following is one way of adding commas to a number, and returning a string.
function addCommas(nStr) { nStr += ''; x = nStr.split('.'); x1 = x[0]; x2 = x.length > 1 ? '.' + x[1] : ''; var rgx = /(\d+)(\d{3})/; while (rgx.test(x1)) { x1 = x1.replace(rgx, '$1' + ',' + '$2'); } return x1 + x2; }
Multi-functional number format script
- commas (configurable digit grouping separators and decimal symbols)
- certain decimal precision that leave trailing zeros
- various formats for currency and negative values
- input can be a string that's already formatted