JavaScript JavaScript Loops, Arrays and Objects Tracking Multiple Items with Arrays Using For Loops with Arrays

I don't THINK there is a typo, but my code still won't work

Hey everyone, can you please help? I can get 'My music playlist' to show up, but the actual list of songs will not. I don't think there is a typo, but I cannot be sure. Can you take a look at my code? Thanks!

var playList = [ 'I Did It My Way', 'Respect', 'Imagine', 'Born to Run', 'Louie Louie', 'Maybellene' ];

function print(message) { document.write(message); }

function printList( list ) { var listHTML = '<ol>'; for ( var i = 0; i < list.length; i+=1;) { listHTML += '<li>' + list[i] + '</li>'; } listHTML += '</ol>'; print( listHTML ); }

printList (playList);

2 Answers

KRIS NIKOLAISEN
PRO
KRIS NIKOLAISEN
Pro Student 50,933 Points

Have you checked the console? There you will find an error in this line:

for ( var i = 0; i < list.length; i+=1;)  

Uncaught SyntaxError: Unexpected token ;

Dennis Henderson
Dennis Henderson
6,935 Points

Looks like you have an extra semi-colon at the end of your for loop. you only need one between each of the items, but not after the final increment statement.

// change this:
for ( var i = 0; i < list.length; i+=1;)

// to this:
for ( var i = 0; i < list.length; i+=1)

// optionally, a bit of short hand, you can change += to ++ if you are adding by 1, like this...
for ( var i = 0; i < list.length; i++)