UNPKG

sugar

Version:

A Javascript utility library for working with native objects.

21 lines (17 loc) 479 B
'use strict'; var isDefined = require('../../common/internal/isDefined'), coreUtilityAliases = require('../../common/var/coreUtilityAliases'); var forEachProperty = coreUtilityAliases.forEachProperty; function objectReduce(obj, fn, acc) { var init = isDefined(acc); forEachProperty(obj, function(val, key) { if (!init) { acc = val; init = true; return; } acc = fn(acc, val, key, obj); }); return acc; } module.exports = objectReduce;