Review JavaScript Fundamentals by Building a Gradebook App - Step 4

Tell us what’s happening:

Don’ t understand why this can’t pass the check. The console output seem the same to the expected output to me

Your code so far

function getAverage(scores) {
  let sum = 0;

  for (const score of scores) {
    sum += score;
  }

  return sum / scores.length;
}

function getGrade(score) {
  if (score === 100) {
    return "A++";
  } else if (score >= 90) {
    return "A";
  } else if (score >= 80) {
    return "B";
  } else if (score >= 70) {
    return "C";
  } else if (score >= 60) {
    return "D";
  } else {
    return "F";
  }
}

function hasPassingGrade(score) {
  return getGrade(score) !== "F";
}


// User Editable Region

function studentMsg(totalScores, studentScore) {
  let classAvg = getAverage(totalScores).toFixed(1);
  let grade = getGrade(studentScore);
  let msg = "Class average: " + classAvg + ". Your grade: " + grade + ". ";
  if(grade !== "F"){
    msg = msg + "You passed the course. "}
  else{
    msg = msg + "You failed the course."
  }
  return msg;
 }

let msg = studentMsg([92, 88, 12, 77, 57, 100, 67, 38, 97, 89], 37)
//console.log(studentMsg([92, 88, 12, 77, 57, 100, 67, 38, 97, 89], 37));
console.log(studentMsg([56, 23, 89, 42, 75, 11, 68, 34, 91, 19], 100));

// User Editable Region


Your browser information:

User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1 Safari/605.1.15

Challenge Information:

Review JavaScript Fundamentals by Building a Gradebook App - Step 4

Hi there, welcome to fcc community.

You don’t need to use toFixed(1) method, as when the score is 70 for example, the number in the message will be displayed as 70.0, and that doesn’t match the message in the test.

Also, there is a trailing space in your message: