number-format
Version:
Implementation of number_format() from PHP.
10 lines (9 loc) • 537 B
text/coffeescript
(exports ? this).numberFormat = (number, decimals = 0, dec_point = '.', thousands_sep = ',') ->
negative = if number < 0 then '-' else ''
number = Math.abs number
decimal = ((number - parseInt number).toFixed decimals)[2..]
number = "#{parseInt number.toFixed decimals}".split('').reverse().join('').
replace(/...(?!$)/g, "$&#{thousands_sep.replace /\$/g, '$$$$'}").
split('').reverse().join('')
decimalPoint = if decimals isnt 0 then dec_point else ''
"#{negative}#{number}#{decimalPoint}#{decimal}"