deno.land / x / lodash@4.17.19 / npm-package / _createMathOperation.js
123456789101112131415161718192021222324252627282930313233343536373839var baseToNumber = require('./_baseToNumber'), baseToString = require('./_baseToString');
/** * Creates a function that performs a mathematical operation on two values. * * @private * @param {Function} operator The function to perform the operation. * @param {number} [defaultValue] The value used for `undefined` arguments. * @returns {Function} Returns the new mathematical operation function. */function createMathOperation(operator, defaultValue) { return function(value, other) { var result; if (value === undefined && other === undefined) { return defaultValue; } if (value !== undefined) { result = value; } if (other !== undefined) { if (result === undefined) { return other; } if (typeof value == 'string' || typeof other == 'string') { value = baseToString(value); other = baseToString(other); } else { value = baseToNumber(value); other = baseToNumber(other); } result = operator(value, other); } return result; };}
module.exports = createMathOperation;
Version Info
External Dependencies