Sha256: 450cfb5a6d2e6bdab315c1cf9358ced5ee1503d915eea9fb7bf28b835f3ffb67
Contents?: true
Size: 937 Bytes
Versions: 14
Compression:
Stored size: 937 Bytes
Contents
/** * Computes the average of an observable sequence of values that are in the sequence or obtained by invoking a transform function on each element of the input sequence if present. * @param {Function} [selector] A transform function to apply to each element. * @param {Any} [thisArg] Object to use as this when executing callback. * @returns {Observable} An observable sequence containing a single element with the average of the sequence of values. */ observableProto.average = function (keySelector, thisArg) { return keySelector && isFunction(keySelector) ? this.map(keySelector, thisArg).average() : this.reduce(function (prev, cur) { return { sum: prev.sum + cur, count: prev.count + 1 }; }, {sum: 0, count: 0 }).map(function (s) { if (s.count === 0) { throw new EmptyError(); } return s.sum / s.count; }); };
Version data entries
14 entries across 7 versions & 1 rubygems