UNPKG

util-helpers

Version:

一个基于业务场景的工具方法库

31 lines (27 loc) 999 B
'use strict'; var ut2 = require('ut2'); var math_util = require('./utils/math.util.js'); var times = require('./times.js'); function divide() { var nums = []; for (var _i = 0; _i < arguments.length; _i++) { nums[_i] = arguments[_i]; } var num1 = nums[0]; var num2 = nums[1] === void 0 ? 1 : nums[1]; var rest = nums.slice(2); if (rest.length > 0) { return divide.apply(void 0, [divide(num1, num2)].concat(rest)); } num1 = math_util.transformEffectiveNumber(num1); num2 = math_util.transformEffectiveNumber(num2); if (ut2.isNaN(num1) || ut2.isNaN(num2)) { return Number.NaN; } var num1Changed = math_util.float2Fixed(num1); var num2Changed = math_util.float2Fixed(num2); math_util.checkBoundary(num1Changed); math_util.checkBoundary(num2Changed); return times(num1Changed / num2Changed, math_util.strip(Math.pow(10, math_util.digitLength(num2) - math_util.digitLength(num1)))); } module.exports = divide;