JavaScript Array flatMap ()

JavaScript Array flatMap () -metoden kortlægger først hvert element ved hjælp af en kortlægningsfunktion og flader det derefter ind i et nyt array.

Metodens syntaks flatMap()er:

 arr.flatMap(callback(currentValue),thisArg)

Her er arr en matrix.

flatMap () Parametre

Den flatMap()metode tager i:

  • callback - Funktionen, der oprindeligt skal udføres på hvert array-element. Det tager i:
    • currentValue - Det aktuelle element, der sendes fra arrayet.
  • thisArg (valgfri) - Værdi, der skal bruges som thisved udførelse callback.

Returneringsværdi fra flatMap ()

  • Returnerer et nyt array efter kortlægning af hvert element ved hjælp callbackog fladning til en dybde på 1 .

Bemærkninger :

  • Den flatMap()metode ændrer ikke den oprindelige array.
  • Den flatMap()metode har samme array.map().flat().

Eksempel: Brug af flatMap () -metoden

 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 )

Produktion

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

Anbefalet læsning: JavaScript Array flat ()

Interessante artikler...