1 | var helperMultiply = require('./helperMultiply')
|
2 |
|
3 | var toNumber = require('./toNumber')
|
4 | var toNumberString = require('./toNumberString')
|
5 |
|
6 | function helperCreateMathNumber(name) {
|
7 | return function (num, digits) {
|
8 | var numRest = toNumber(num)
|
9 | var rest = numRest
|
10 | if (numRest) {
|
11 | digits = digits >> 0
|
12 | var numStr = toNumberString(numRest)
|
13 | var nums = numStr.split('.')
|
14 | var intStr = nums[0]
|
15 | var floatStr = nums[1] || ''
|
16 | var fStr = floatStr.substring(0, digits + 1)
|
17 | var subRest = intStr + (fStr ? ('.' + fStr) : '')
|
18 | if (digits >= floatStr.length) {
|
19 | return toNumber(subRest)
|
20 | }
|
21 | subRest = numRest
|
22 | if (digits > 0) {
|
23 | var ratio = Math.pow(10, digits)
|
24 | rest = Math[name](helperMultiply(subRest, ratio)) / ratio
|
25 | } else {
|
26 | rest = Math[name](subRest)
|
27 | }
|
28 | }
|
29 | return rest
|
30 | }
|
31 | }
|
32 |
|
33 | module.exports = helperCreateMathNumber
|