Split Up Evenly explainer


#1

The aim of this puzzle: Complete the average() function definition so that it returns the average value of the array

Walkthrough of the solution: The average (also called the “arithmetic mean”) of a set of numbers is calculated by adding all the numbers up and the dividing the total by the number of values used.

The function definition starts by creating a variable called total. Since nothing has been added up yet, it starts at 0. Next, there’s a for...of loop that goes through each element of the array. Inside that loop, the element should be added to the total using the += operator. Once the loop is done, the total will be the sum of all the numbers in the array. To return the average, the total should be divided by the number of values. The number of values is the .length of the array, so the return value should be total / array.length.

Sample code solution:
(Tap below to reveal)

import { getData, findHotels } from 'grasshopper.reviews';
import { getRatings } from 'myFunctions';

function average(array) {
  let total = 0;
  for (let element of array) {
    total += element;
  }
  return total/array.length;
}

let grasslandRatings = getRatings(getData('Grassland', findHotels));
console.log(grasslandRatings);
console.log('The average is:');
console.log(average(grasslandRatings));

JavaScript Concepts: Arithmetic Operator (/), Assignment Operator (+=), Callback Functions, Calling Functions, Code Block (for loop, function), console.log(), import, .length


#2