Files
lodash/.internal/baseSum.js
2017-03-12 23:16:34 -07:00

24 lines
545 B
JavaScript

/**
* The base implementation of `sum` and `sumBy`.
*
* @private
* @param {Array} array The array to iterate over.
* @param {Function} iteratee The function invoked per iteration.
* @returns {number} Returns the sum.
*/
function baseSum(array, iteratee) {
let result
let index = -1
const { length } = array
while (++index < length) {
const current = iteratee(array[index])
if (current !== undefined) {
result = result === undefined ? current : (result + current)
}
}
return result
}
export default baseSum