Files
lodash/math/sum.js
John-David Dalton 4ce1d5ddd3 Bump to v3.4.0.
2015-12-16 17:48:03 -08:00

34 lines
715 B
JavaScript

define(['../lang/isArray', '../internal/toIterable'], function(isArray, toIterable) {
/**
* Gets the sum of the values in `collection`.
*
* @static
* @memberOf _
* @category Math
* @param {Array|Object|string} collection The collection to iterate over.
* @returns {number} Returns the sum.
* @example
*
* _.sum([4, 6, 2]);
* // => 12
*
* _.sum({ 'a': 4, 'b': 6, 'c': 2 });
* // => 12
*/
function sum(collection) {
if (!isArray(collection)) {
collection = toIterable(collection);
}
var length = collection.length,
result = 0;
while (length--) {
result += +collection[length] || 0;
}
return result;
}
return sum;
});