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.
 
 
 

20 lines
483 B

  1. export default function mean(values, valueof) {
  2. let count = 0;
  3. let sum = 0;
  4. if (valueof === undefined) {
  5. for (let value of values) {
  6. if (value != null && (value = +value) >= value) {
  7. ++count, sum += value;
  8. }
  9. }
  10. } else {
  11. let index = -1;
  12. for (let value of values) {
  13. if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {
  14. ++count, sum += value;
  15. }
  16. }
  17. }
  18. if (count) return sum / count;
  19. }