@sankhyalabs/core 5.1.0 → 5.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -29,8 +29,8 @@ export class NumberUtils {
|
|
|
29
29
|
* Informo: ("100.16", 3) | 100.16
|
|
30
30
|
*/
|
|
31
31
|
static round(value, decimals = 2) {
|
|
32
|
-
const
|
|
33
|
-
return
|
|
32
|
+
const multiplier = Math.pow(10, decimals);
|
|
33
|
+
return Math.round(value * multiplier) / multiplier;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumberUtils.js","sourceRoot":"","sources":["../../src/utils/NumberUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,mCAAmC,GAAW,qCAAqC,CAAC;AAE1F;;GAEG;AACH,MAAM,OAAO,WAAW;IA6MpB;;;;;;;;;;;;;;;;;;;;;;;MAuBE;IACF,MAAM,CAAC,KAAK,CAAC,KAAa,EAAE,WAAmB,CAAC;QAC5C,MAAM,
|
|
1
|
+
{"version":3,"file":"NumberUtils.js","sourceRoot":"","sources":["../../src/utils/NumberUtils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/utils/NumberUtils.ts
CHANGED
|
@@ -170,7 +170,7 @@ export class NumberUtils {
|
|
|
170
170
|
return value.replace(/\./g, '_').replace(/\,/g, '.').replace(/\_/g, ',');
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
|
|
173
|
+
|
|
174
174
|
|
|
175
175
|
/**
|
|
176
176
|
* Obtém o valor ou o valor padrão, caso o valor seja inválido(NaN/undefined).
|
|
@@ -235,7 +235,7 @@ export class NumberUtils {
|
|
|
235
235
|
* Informo: ("100.16", 3) | 100.16
|
|
236
236
|
*/
|
|
237
237
|
static round(value: number, decimals: number = 2):number {
|
|
238
|
-
const
|
|
239
|
-
return
|
|
238
|
+
const multiplier = 10 ** decimals;
|
|
239
|
+
return Math.round(value * multiplier) / multiplier;
|
|
240
240
|
}
|
|
241
241
|
}
|
|
@@ -166,6 +166,9 @@ describe('StringUtils', function () {
|
|
|
166
166
|
{ decimal: 1, inputValue: 100.16, outPutValue: 100.2 },
|
|
167
167
|
{ decimal: 2, inputValue: 100.16, outPutValue: 100.16 },
|
|
168
168
|
{ decimal: 3, inputValue: 100.16, outPutValue: 100.16 },
|
|
169
|
+
{ decimal: 12, inputValue: 2118000000000.0002, outPutValue: 2118000000000.0002 },
|
|
170
|
+
{ decimal: 5, inputValue: 123.45, outPutValue: 123.45 },
|
|
171
|
+
{ decimal: 0, inputValue: 123.45, outPutValue: 123 },
|
|
169
172
|
]
|
|
170
173
|
|
|
171
174
|
it('format round number', function () {
|