Oh! And it's got a great explanation for why you can't always consistently use const or let when paused in the debugger and step forward, because they operate on the declarative environment of the global scope but var exists in the object environment just like window. I never really knew why they were out of scope but now apparently I have my answer!