00001 var arrayReduceRight = require('./_arrayReduceRight'), 00002 baseEachRight = require('./_baseEachRight'), 00003 baseIteratee = require('./_baseIteratee'), 00004 baseReduce = require('./_baseReduce'), 00005 isArray = require('./isArray'); 00006 00029 function reduceRight(collection, iteratee, accumulator) { 00030 var func = isArray(collection) ? arrayReduceRight : baseReduce, 00031 initAccum = arguments.length < 3; 00032 00033 return func(collection, baseIteratee(iteratee, 4), accumulator, initAccum, baseEachRight); 00034 } 00035 00036 module.exports = reduceRight;