UNPKG

954 BJavaScriptView Raw
1var helperMultiply = require('./helperMultiply')
2
3var toNumber = require('./toNumber')
4var toNumberString = require('./toNumberString')
5
6function 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
33module.exports = helperCreateMathNumber