JavaScript JavaScript Loops, Arrays and Objects Tracking Multiple Items with Arrays Build a Quiz Challenge, Part 2 Solution

Pierre Pfennig
Pierre Pfennig
386 Points

I don't get any content "printed to the webpage". I can answer all questions, but in the end nothing appears.

var questions = [ ['How many states are in the United States?', 50], ['How many continents are there?', 7], ['How many legs does an insect have?', 6] ]; var correctAnswers = 0; var question; var answer; var response; var html; var correct = []; var wrong = [];

function print(message) { var outputDiv = document.getElementById('output'); outputDiv.innerHTML = message; }

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

for (var i = 0; i < questions.length; i += 1) { question = questions[i][0]; answer = questions[i][1]; response = prompt(question); response = parseInt(response); if (response === answer) { correctAnswers += 1; correct.push(question); } else { wrong.push(question); } }

html = "You got " + correctAnswers + " question(s) right." html += '<h2>You got these questions correct:</h2>'; html += buildList(correct); html += '<h2>You got these questions wrong:</h2>'; hmtl += buildList(wrong); print(html);

1 Answer

Steven Parker
Steven Parker
171,120 Points

In the second-to-last statement, you have "hmtl" instead of "html".

Tip: Learn to use the browser's DevTools, it can make finding errors like this easy.

Pierre Pfennig
Pierre Pfennig
386 Points

ohh I see. Thank you !

Yeah I really should. Thanks :)

Steven Parker
Steven Parker
171,120 Points

Pierre Pfennig — Glad to help. You can mark a question solved by choosing a "best answer".
And happy coding!