This is a fairly common trick, you just run the debugger method in a setTimeout loop since it's a no-op if the debugger isn't open. It's a common tactic used by quasi-illicit sport streaming websites that are usually filled with ads.
There's a button in Chrome Dev Tools to disable breaking on breakpoints that gets round this.