DEV Community

Alejandro
Alejandro

Posted on

Array.foreach vs for() 😰

La verdad es que siempre pensé que eran homónimos, no pensé que podría haber tanta diferencia entre una función y otra.

Pues resulta que realizar un foreach implica que la ejecución va a tardar nada más ni nada menos que un 96% más(!!!) que un for 😳 y para ejemplo un botón:

Benchmark.prototype.setup = function() { // Populate the base array var arr = []; for (var i = 0; i < 1000; i++) { arr[i] = i; } function someFn(i) { return i * 3 * 8; } }; 
Enter fullscreen mode Exit fullscreen mode

Al ejecutar esto, tenemos lo siguiente (puedes probar aquí):

alt text

Obviamente esto se puede notar cuando estamos trabajando con miles de registros, pero es mejor implementar buenas prácticas desde un principio 😌

Con esta evidencia, definitivamente quedo prohibido de utilizar foreach en cualquier desarrollo que haga en Angular en favor al simple y querido for de toda la vida ❤

Por cierto, eso no aplica a TypeScript ya que el foreach se compila al for que nos gusta 😬

Top comments (0)