Captain's log, stardate d73.y38/AB
Except for performance reasons (on very rare occasions), I always prefer "forEach" or "map" over "for" statements, but lately I'm programming in Angular, where it's common to use "for" loops in things like "ngFor".
If you only have to know one thing is: try to avoid for loops… and then… always use "for..of" and never use "for..in".
I have always problems remembering this, so here's a mnemotechnic rule: "rof" is "for" backwards. "for…of" (the right choice) is almost a palindrome.
UPDATE: By the way, "for..of" is a ES6 feature, so I won't work in, sigh, some browsers. Check the compatibility table and transpile if necessary.