Catch Off By One Errors When Using Indexing bug

Tell us what’s happening:

Is this some kind of bug or what ?

Your code so far


function countToFive() {
  let firstFive = "12345";
  let len = firstFive.length;
  // Fix the line below
  for (let i = 0; i <= 5; i++) {
  // Do not alter code below this line
    console.log(firstFive[i]);
  }
}

countToFive();

Your browser information:

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

Link to the challenge:
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/debugging/catch-off-by-one-errors-when-using-indexing

I think you’re supposed to use len instead of 5 in the for-loop header. Then you’ll have to fix one more part to pass.

Yea this part --> Your code should set the terminal condition of the loop so it stops at the last index.
Also I changed this: for (let i = 0; i <= 5; i++) to this for (let i = 0; i <= len-1; i++)

That part can still be simplified. You don’t have to explicitly subtract 1 from len

1 Like

for (let i = 0; i => len; i++) this one is correct too

It’s ok I found the correct answer for (let i = 0; i< len; i++)

1 Like