From 9159e22352a0077086d12151d2e1d1c813a967c3 Mon Sep 17 00:00:00 2001
From: Travis CI
Convert a float-point arithmetic to the Decimal mark form.
-Use toString() to convert the float num to a string, then use regex to separate every three characters of the integer part with a comma.
Use toString() to convert the float num to a string, then use regex to separate every three characters of the integer part with a comma.
+Use Ttemplate Literals to return joined parts.
const toDecimalMark = (num) => {
- let cleanNum = num.toString().split('').filter(n => '0123456789.'.includes(n)).join('')
- let wholeNum = cleanNum.split('.')[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",")
- let decNum = `.${cleanNum.split('.')[1]}`
- return wholeNum + decNum;
+ let numberParts = num.toString().split('.')
+ return `${numberParts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ',')}.${numberParts[1]}`
}
// toDecimalMark(12305030388.9087) //-> '12,305,030,388.9087'
-// toDecimalMark(123.889087e2) //-> '12,388.9087'
-// toDecimalMark('12305abc030388.9087') // -> '12,305,030,388.9087'
Adds an ordinal suffix to a number.