Review JavaScript Fundamentals by Building a Gradebook App - Step 2

Tell us what’s happening:

I tried this with the final step of the function as just "else { return “F”} and that failed so I figured it wanted me to limit the F scope to just between 0 and 59 and typed the code as it displays now. It still fails. I’m not sure what I am doing wrong as the explanations, console test results, and error messages on the JavaScript course are the LEAST informative/helpful of all the lessons so far. I think this course needs to be revamped. 4 hour freeCodeCamp video also didn’t help.

Your code so far

function getAverage(scores) {
  let sum = 0;

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

  return sum / scores.length;
}

// User Editable Region

function getGrade(score) {
  if (score === 100) {
    return "A++"
  } else if (score >= 90 && <= 99) {
    return "A"
    } else if (score >= 80 && <= 89) {
      return "B"
    } else if (score >= 70 && <= 79) {
      return "C"
    } else if (score >= 60 && <= 69) {
      return "D"
    } else if ( score >=0 && <= 59) {
      return "F"
    }

} 

console.log(getGrade(96));
console.log(getGrade(82));
console.log(getGrade(56));

// User Editable Region

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36

Challenge Information:

Review JavaScript Fundamentals by Building a Gradebook App - Step 2

UPDATE: I ran the code in Chrome and Chrome was helpful enough to tell me that I needed to restate the variable ‘score’ for the second half of my argument. THAT is helpful

1 Like

There only asking for a greater than or equal to then return score. Also I think you should probably go back to your original code and post that. Good luck

you are given all the information needed: the expected output, the implementation is completely free

when I paste your code in the editor I see this in the console:

SyntaxError: unknown: Unexpected token (16:28)

  14 |   if (score === 100) {
  15 |     return "A++"
> 16 |   } else if (score >= 90 && <= 99) {
     |                             ^
  17 |     return "A"
  18 |     } else if (score >= 80 && <= 89) {
  19 |       return "B"

this is what JavaScript tells you when you have a syntax error

didn’t you see this in the console?

the editor also adds a red squiggly line below where there is the issue:
image

Thanks, I completely missed this in the console output. > 16 | } else if (score >= 90 && <= 99)