Use .forEach() para iterar sobre elementos en JavaScript

Alex Dulcianu 12 octubre 2023
  1. Use .forEach() para ejecutar una función para cada elemento en un array en JavaScript
  2. Realice comprobaciones en cada elemento para interrumpir la ejecución si no se cumplen ciertas condiciones en JavaScript
Use .forEach() para iterar sobre elementos en JavaScript

La iteración es una de las herramientas más poderosas en el arsenal de cada codificador, razón por la cual la mayoría de los lenguajes tienen una variedad de métodos asociados con diferentes tipos de bucles lógicos.

JavaScript tiene una variedad de métodos de este tipo, según lo que intente lograr. En este caso, el método .forEach() es un poco más potente que un simple bucle for, principalmente porque te permite ejecutar una función específica para cada elemento sobre el que iteras.

De acuerdo, también puede usar un bucle regular para lograr lo mismo si anida la llamada de función deseada dentro del bucle en algún lugar, pero .forEach() simplifica bastante el código. Además, también puede ser un poco más fácil de mantener más adelante y también mejora la legibilidad.

Para empezar, así es como se puede usar .forEach() en su código:

Use .forEach() para ejecutar una función para cada elemento en un array en JavaScript

La forma más sencilla de demostrar la utilidad de .forEach() es verlo en acción al iterar sobre un array de elementos.

const myArray = ['element1', 'element2', 'element3'];

myArray.forEach(element => console.log(element));

Producción :

"element1"
"element2"
"element3"

El ejemplo anterior usa la notación de flecha, pero esa no es la única opción. El mismo resultado se puede lograr utilizando una función de devolución de llamada en línea, de la siguiente manera:

const myArray = ['element1', 'element2', 'element3'];

myArray.forEach(function(element) {
  console.log(element);
})

Producción :

"element1"
"element2"
"element3"

Este método es un poco más detallado, lo que significa que requiere un poco más de revestimiento de caldera. Dicho esto, la verbosidad a veces es un buen objetivo si está trabajando con un equipo y desea que su código sea lo más sencillo posible.

Realice comprobaciones en cada elemento para interrumpir la ejecución si no se cumplen ciertas condiciones en JavaScript

Algunos de ustedes ya habrán notado que cuando se trabaja con .forEach(), la función asociada siempre se ejecuta para cada elemento del array. Eso no siempre es deseable, especialmente si la función en cuestión requiere mucha potencia de procesamiento y tiene un tiempo de ejecución prolongado.

Para esos casos, puede ser bueno que se cumplan algunas condiciones para que se ejecute la función. Para lograr esto, todo lo que tiene que hacer es introducir una declaración if y devolver algo si las condiciones se evalúan como falsas.

Así es como se vería en acción:

const myArray = ['element1', 'element2', 'element3'];

myArray.forEach(function(element) {
  if (element === 'element2') {
    return;
  } else {
    console.log(element);
  }
});

Producción :

"element1"
"element3"

Como puedes ver, la función salta el elemento del array que cumple la condición que hemos puesto. Sin embargo, la iteración continúa con los siguientes elementos del array, que es el comportamiento esperado.

Este método evalúa cada elemento del array antes de ejecutar la función asociada, ya que puede haber casos en los que no desee que se ejecute la función. Al hacer esto, elimina el paso de filtrar la matriz de antemano.