Yes with "debugger" in JS and 'breakpoint()' in Python.
It's great!
For defensive programming I have a common assert routine which does all of the above
In many debuggers, there is an option to break on unhandled / handled / all exceptions.
Yeah but that often casts the net too wide and catches expected 3rd party internal logic or catches the exception too high and you lose the local context.