JavaScript Array flatMap ()

El método JavaScript Array flatMap () primero mapea cada elemento usando una función de mapeo, luego lo aplana en una nueva matriz.

La sintaxis del flatMap()método es:

 arr.flatMap(callback(currentValue),thisArg)

Aquí, arr es una matriz.

Parámetros de flatMap ()

El flatMap()método incluye:

  • callback: la función que se ejecutará inicialmente en cada elemento de la matriz. Toma en:
    • currentValue: el elemento actual que se pasa de la matriz.
  • thisArg (opcional): valor que se utilizará thisal ejecutar callback.

Valor de retorno de flatMap ()

  • Devuelve una nueva matriz después de mapear cada elemento callbacky aplanarlo a una profundidad de 1 .

Notas :

  • El flatMap()método no cambia la matriz original.
  • El flatMap()método es equivalente a array.map().flat().

Ejemplo: uso del método flatMap ()

 const arr1 = (1, 2, 3, 4, 5); const newArr1 = arr1.flatMap((x) => (x ** 2)); console.log(newArr1); // ( 1, 2, 3, 4, 5 ) // can also be done as const intermediate = arr1.map((x) => (x ** 2)); console.log(intermediate); // ( ( 1 ), ( 4 ), ( 9 ), ( 16 ), ( 25 ) ) const newArr2 = intermediate.flat(); console.log(newArr2); // ( 1, 4, 9, 16, 25 ) const numbers = (1, 2, 3, 4, 5, 6, 7); // remove odd and split even element to two half elements function func(n) ( if (n % 2 === 0) ( return (n / 2, n / 2); ) else ( return (); ) ) const newArr3 = numbers.flatMap(func); console.log(newArr3); // ( 1, 1, 2, 2, 3, 3 )

Salida

 (1, 4, 9, 16, 25) ((1), (4), (9), (16), (25)) (1, 4, 9, 16, 25) (1, 1, 2, 2, 3, 3)

Lectura recomendada: JavaScript Array flat ()

Articulos interesantes...