Often, when a program is run and the browser becomes unresponsive and crashes, it means that the program contains an infinite loop.
Infinite loops occur when loops have no exit condition (no way to stop) so when the program is run it loops forever with no break, causing the browser to crash. This happens most often with while
loops, but any kind of loop can become infinite.
Learn more about loops by checking out this tutorial.
Debugging Infinite Loops
The best first step for debugging an infinite loop is to comment out different sections or lines of code. Next, run the program again to see where the infinite loop is occurring. Start by testing any sections that contain for
or while
loops, then if/else
statements, then other blocks of code.
Once the program runs successfully, you know that your infinite loop is in the commented-out section of the code. Check the code carefully to make sure that it contains a condition that will cause the loop to stop. For example:
In a
while
loop, will the condition get to false to break the loop?In a
for
loop, doesi
increment correctly?In an
if/else
statement, are all possibilities accounted for?
Each time students make a change to their code, running the code again will show whether they have successfully debugged the loop!
Still have questions? Contact our team at hello@codehs.com to learn more!