徐总多门店
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.

28 lines
721 B

5 months ago
var helperNumberAdd = require('./helperNumberAdd')
var isFunction = require('./isFunction')
var each = require('./each')
var get = require('./get')
/**
* 求和函数将数值相加
*
* @param {Array} array 数组
* @param {Function/String} iterate 方法或属性
* @param {Object} context 上下文
* @return {Number}
*/
function sum (array, iterate, context) {
var result = 0
each(array, iterate ? isFunction(iterate) ? function () {
result = helperNumberAdd(result, iterate.apply(context, arguments))
} : function (val) {
result = helperNumberAdd(result, get(val, iterate))
} : function (val) {
result = helperNumberAdd(result, val)
})
return result
}
module.exports = sum