You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
24 lines
600 B
24 lines
600 B
/** |
|
* The base implementation of `_.sum` and `_.sumBy` without support for |
|
* iteratee shorthands. |
|
* |
|
* @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) { |
|
var result, |
|
index = -1, |
|
length = array.length; |
|
|
|
while (++index < length) { |
|
var current = iteratee(array[index]); |
|
if (current !== undefined) { |
|
result = result === undefined ? current : (result + current); |
|
} |
|
} |
|
return result; |
|
} |
|
|
|
module.exports = baseSum;
|
|
|