Método de reducción de matriz en JavaScript | Explicado

Método de reducción de matriz en JavaScript | Explicado
El método de matriz reduce () se usa para iterar a través de todos los elementos de una matriz y aplicar una función reductor () en cada elemento individualmente. Esta función reductor () es una función de devolución de llamada. Al final de toda la ejecución de la función de devolución de llamada, se devuelve un valor resultante final. Dado que devuelve solo un valor, se conoce como un reductor que reduce la totalidad de una matriz en un solo valor.

Esta función de devolución de llamada se puede crear dentro de los parámetros de la función Reducir e incluso se puede crear en otro lugar explícitamente. El método reductor () recibe tres argumentos automáticamente. El primero es el valor total, actualelem, CurrentElemIndex.

Para comprender el método de reducción de matriz (), hablemos sobre su sintaxis adecuada:

Sintaxis del método de reducción de matriz ()

La sintaxis del método de matriz reduce () se puede explicar como:

arrayvar.reducir (función (total/inicial Value, CurrentElem, CurrentElemIndex), InitialValue);

En esta sintaxis:

  • arrayvar es el nombre de la variable de matriz en la que se aplica el método Rede ()
  • Función es la función de devolución de llamada que se conoce como el método reductor
  • valor inicial es el valor inicial que se puede pasar a la función de devolución de llamada para establecer su total Parámetro (opcional)

Dentro de la función de devolución de llamada:

  • Total/InitialValue se utiliza para almacenar el valor de retorno de la ejecución anterior de la función reductora o incluso se puede utilizar para almacenar un valor inicial
  • actualelem se utiliza para almacenar el valor del elemento de matriz en el que se ejecuta la función reductora
  • CurrentElemIndex se utiliza para almacenar el índice del elemento de matriz en el que se está ejecutando la función reductora

Valor de retorno:

El valor resultante o acumulado calculado ejecutando la función de devolución de llamada en todos los elementos de la matriz

Para comprender mejor el funcionamiento del método Red (), eche un vistazo a los ejemplos a continuación:

Ejemplo 1: Agregar valores de una matriz usando el método Rede ()

Comience creando una nueva matriz con la siguiente línea de código:

NumbersArray = [56,12,87,44,99,67];

Después de eso, aplique el método Reder () en el "NumbersArray" y crear una función dentro de su argumento y también almacene el valor de resultado del método Reder () en una nueva variable con las siguientes líneas de código:

resultado = NumbersArray.reducir (función (total, currentElem)
return Total + CurrentElem;
);

Después de eso, para mostrar el valor reducido final en el terminal, simplemente pase la variable "resultado" En la función de registro de la consola como:

consola.log (resultado);

El fragmento de código completo es como:

NumbersArray = [56, 12, 87, 44, 99, 67];
resultado = NumbersArray.reducir (función (total, currentElem)
return Total + CurrentElem;
);
consola.log (resultado);

Ejecutar el programa y el siguiente resultado se mostrará en el terminal:

El valor final se imprimió en la terminal.

Ejemplo 2: restando todos los valores de una matriz de 1000 con función explícita

Comience creando una función llamada como SINTRATHALL () Con las siguientes líneas de código:

function subtractall (inicialValue, currentElem)
return inicialValue - CurrentElem;

En las líneas anteriores, la función reductora se creó con dos parámetros y se devolvió un valor. Después de eso, cree una matriz con números almacenados dentro de él con las siguientes líneas de código:

Thearray = [78, 12, 87, 44, 53, 69];

Después de eso, aplique el método Reder () en el "Thearray" y proporcione un valor inicial como 1000 y también almacene el valor devuelto en una variable con las siguientes líneas:

resultado var = thearray.reducir (sutractall, 1000);

Después de eso, pase la variable de resultado en la función de registro de la consola para imprimir el valor final en el terminal como:

consola.log (resultado);

El fragmento de código completo es como:

function subtractall (inicialValue, currentElem)
return inicialValue - CurrentElem;

Thearray = [78, 12, 87, 44, 53, 69];
resultado var = thearray.reducir (sutractall, 1000);
consola.log (resultado);

Ejecutar el programa dará el siguiente resultado en el terminal:

Todos los valores de la matriz se restaron de 1000, y el valor final se ha imprimido en el terminal.

Envolver

El método de matriz reduce () se utiliza para implementar una función de devolución de llamada en cada elemento de matriz y calcular un solo valor final. Dado que la función de devolución de llamada se usa para calcular un valor final único, la función de devolución de llamada también se conoce como el método reductor. Este artículo ha explicado la matriz reduce () con la ayuda de ejemplos.