JavaScript: método Array forEach ()

Descripción

Matriz de JavaScript forEach() El método llama a una función para cada elemento de la matriz.

Sintaxis

Su sintaxis es la siguiente:

array.forEach(callback[, thisObject]);

Detalles de los parámetros

  • callback - Función para probar cada elemento de una matriz.

  • thisObject - Objeto para usar como este al ejecutar callback.

Valor devuelto

Devuelve la matriz creada.

Compatibilidad

Este método es una extensión de JavaScript del estándar ECMA-262; como tal, puede que no esté presente en otras implementaciones del estándar. Para que funcione, debe agregar el siguiente código en la parte superior de su secuencia de comandos.

if (!Array.prototype.forEach) {
   Array.prototype.forEach = function(fun /*, thisp*/) {
      var len = this.length;
      if (typeof fun != "function")
      throw new TypeError();
      
      var thisp = arguments[1];
      for (var i = 0; i < len; i++) {
         if (i in this)
         fun.call(thisp, this[i], i, this);
      }
   };
}

Ejemplo

Pruebe el siguiente ejemplo.

<html>
   <head>
      <title>JavaScript Array forEach Method</title>
   </head>
   
   <body>   
      <script type = "text/javascript">
         if (!Array.prototype.forEach) {
            Array.prototype.forEach = function(fun /*, thisp*/) {
               var len = this.length;
               
               if (typeof fun != "function")
               throw new TypeError();
               
               var thisp = arguments[1];
               for (var i = 0; i < len; i++) {
                  if (i in this)
                  fun.call(thisp, this[i], i, this);
               }
            };
         }
         function printBr(element, index, array) {
            document.write("<br />[" + index + "] is " + element ); 
         }
         [12, 5, 8, 130, 44].forEach(printBr);
      </script>      
   </body>
</html>

Salida

[0] is 12
[1] is 5
[2] is 8
[3] is 130
[4] is 44