Basic JavaScript: Golf Code

I can pass this test if I manually enter in all of the names to be returned, which is what the HINT section suggested, but I thought the whole point of the “var names = …” at the top of the page was to select the names using the array. It worked for the “Hole in one!”, but not for the others.

This is my code:

var names = ["Hole-in-one!", "Eagle", "Birdie", "Par", "Bogey", "Double Bogey", "Go Home!"];
function golfScore(par, strokes) {
  // Only change code below this line
  if (strokes = 1){
    return names[0];
  else if (strokes <= par -2){
    return names[1];
  else if (strokes == par -1){
    return names[2];
  else if (strokes == par) {
    return names[3];
  else if (strokes == par + 1){
    return names[4];
  else if (strokes == par + 2){
    return names[5];
  return names[6];};
  // Only change code above this line

// Change these values to test
golfScore(5, 4);

You made a very common mistake here. You used the assignment operator (=) instead of an equality operator (== or ===). We all make this mistake at some point.

Oof. A real shot to the confidence.

Thanks for your help, Kevin.

I’ve edited your post for readability. When you enter a code block into a forum post, please precede it with a separate line of three backticks and follow it with a separate line of three backticks to make easier to read.

Note: Backticks are not single quotes.

See this post to find the backtick on your keyboard. The “preformatted text” tool in the editor (</>) will also add backticks around text.