average.js 397 B

12345678910111213141516
  1. 'use strict';
  2. var _require = require('../helpers/is'),
  3. isFunction = _require.isFunction;
  4. module.exports = function average(key) {
  5. if (key === undefined) {
  6. return this.sum() / this.items.length;
  7. }
  8. if (isFunction(key)) {
  9. return new this.constructor(this.items).sum(key) / this.items.length;
  10. }
  11. return new this.constructor(this.items).pluck(key).sum() / this.items.length;
  12. };