From bafebfb86c8e0c74cd8cc6fa86719230c7eac3ce Mon Sep 17 00:00:00 2001
From: Pl4gue
Date: Thu, 21 Dec 2017 15:39:03 +0000
Subject: [PATCH] Travis build: 43
---
README.md | 21 +++++++++++++++++++++
docs/index.html | 14 ++++++++++++++
2 files changed, 35 insertions(+)
diff --git a/README.md b/README.md
index 96dfe3c60..bfb0a410b 100644
--- a/README.md
+++ b/README.md
@@ -150,6 +150,7 @@
* [`isSymbol`](#issymbol)
* [`RGBToHex`](#rgbtohex)
* [`timeTaken`](#timetaken)
+* [`toDecimalMark`](#todecimalmark)
* [`toOrdinalSuffix`](#toordinalsuffix)
* [`UUIDGenerator`](#uuidgenerator)
* [`validateEmail`](#validateemail)
@@ -2091,6 +2092,26 @@ const timeTaken = callback => {
[⬆ back to top](#table-of-contents)
+### toDecimalMark
+
+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.
+
+ ```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;
+}
+// toDecimalMark(12305030388.9087) //-> '12,305,030,388.9087'
+// toDecimalMark(123.889087e2) //-> '12,388.9087'
+// toDecimalMark('12305abc030388.9087') // -> '12,305,030,388.9087'
+```
+
+[⬆ back to top](#table-of-contents)
+
### toOrdinalSuffix
Adds an ordinal suffix to a number.
diff --git a/docs/index.html b/docs/index.html
index 0423fcd3e..deec6540b 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -181,6 +181,7 @@
isSymbol
RGBToHex
timeTaken
+toDecimalMark
toOrdinalSuffix
UUIDGenerator
validateEmail
@@ -1270,6 +1271,19 @@ Omit the second argument to use the default regex.
// timeTaken(() => Math.pow(2, 10)) -> 1024
// (logged): timeTaken: 0.02099609375ms
+
toDecimalMark
+
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.
+
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;
+}
+// toDecimalMark(12305030388.9087) //-> '12,305,030,388.9087'
+// toDecimalMark(123.889087e2) //-> '12,388.9087'
+// toDecimalMark('12305abc030388.9087') // -> '12,305,030,388.9087'
+
toOrdinalSuffix
Adds an ordinal suffix to a number.
Use the modulo operator (%) to find values of single and tens digits.