Off-by-one errors: using < vs <= or starting at vs
Forgetting to update the loop variable (infinite loop)
Using for...in on arrays instead of for...of
Modifying an array while looping over it
Creating unnecessary nested loops when one would work
Test loops with small inputs first. Trace through execution manually to verify behavior.