Why can’t I output outside the function here, why does it need to be inside?
counter = 0; function countJar() { counter += 1 document.getElementById('demo').innerHTML = counter; } // why can't it be here?
Advertisement
Answer
Because if it were where you’ve shown in the question, the value would be 0
. The code runs immediately on page load, it doesn’t wait for something to call countJar
. Where it is now, it doesn’t run until countJar
is called.
If you mean you can’t even see 0
when you try to put it there, that would be because the id="demo"
element doesn’t exist yet. If that’s what you mean, this question’s answers apply.