JSBits #5: Loop statements: 'for..in' vs 'for..of'

Diario del capitán, fecha estelar 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".

Downwards staircase - Photo from Unsplash

So, again, there are two "for" statements in JavaScript to instruct loops. Yet another source of confusion, as per JavaScripts usual nature!

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.

More information:

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.

Daniel Gómez

Daniel Gómez

Dani tuvo un Oric 1 como primer ordenador, al menos hace 100 años. Ahora combina la programación con sus dos bandas y sus tres hijos. La leyenda dice que tiene un hermano gemelo idéntico y que trabajan como equipo.

comments powered by Disqus

Estás a un paso de conocer a tu mejor socio.