Debugging with breakpoints
A breakpoint allows you to specify a line of code where execution will pause. Once it “hits”, you can see the state of the call stack, local variables, and more.
You can continue execution until the next breakpoint is encountered, including the one you just hit.
This isn’t to be confused with CSS breakpoints, which determine which styles to apply at particular screen dimensions. So web developers have two kinds of breakpoints :)
Pro-tip: If your breakpoint isn’t hitting and you’re not sure why, it could be the line is being optimized out or moved elsewhere (with the breakpoint not moving with it). Try moving it somewhere else nearby or one level higher in the call stack.