This is done by rewriting loop code with a test to see how many times the test has been called.
In general, JS is going to run pretty quick, so an infinite loop can rack up 100,000 iterations pretty quickly. If we hit that limit, we break out of the loop and console.error (note: I'd like to echo this back to the user in the UI somehow - probably the linter notice).
This way the code continues, it's a little slow, but it *doesn't* crash the browser.