diff --git a/snippets/toDecimalMark.md b/snippets/toDecimalMark.md index 79cea1840..802578ec5 100644 --- a/snippets/toDecimalMark.md +++ b/snippets/toDecimalMark.md @@ -3,15 +3,12 @@ Convert a float-point arithmetic to the [Decimal mark](https://en.wikipedia.org/wiki/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 [Ttemplate Literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) to return joined parts. ```js 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' ```