JavaScriptTablice

Array.prototype.flat()

Spłaszcza zagnieżdżone tablice do podanej głębokości.

Zwraca
Nową, spłaszczoną tablicę.
Zmienia oryginał
Nie
Na tej stronie

Przykład

#
JavaScript
const nested = [1, [2, 3], [4, [5, [6]]]]

console.log(nested.flat())
console.log(nested.flat(2))
console.log(nested.flat(Infinity))
Konsola
[1, 2, 3, 4, [5, [6]]]
[1, 2, 3, 4, 5, [6]]
[1, 2, 3, 4, 5, 6]

Definicja i zastosowanie

#

Metoda flat() tworzy nową tablicę, w której zagnieżdżone tablice są rozłożone na pojedyncze elementy. Domyślnie spłaszcza jeden poziom zagnieżdżenia.

Argument określa głębokość: flat(2) spłaszcza dwa poziomy, a flat(Infinity) wszystkie, niezależnie od głębokości.

Przy okazji usuwa też puste miejsca w tablicach rzadkich. Oryginalna tablica się nie zmienia.

Składnia

#
Składnia
array.flat()
array.flat(depth)

Parametry

#
  • depth

    opcjonalny

    Liczba poziomów do spłaszczenia. Domyślnie 1.

Obsługa przeglądarek

#

Szeroko dostępne

Działa we wszystkich nowoczesnych przeglądarkach, także na telefonach. Możesz używać bez obaw.

  • Chrome
  • Edge
  • Firefox
  • Safari

Dobre praktyki

#
  • Jeśli najpierw mapujesz, a potem spłaszczasz, użyj flatMap() zamiast map().flat().
  • flat(Infinity) jest wygodne, ale przy nieznanych, bardzo głębokich danych może być kosztowne.

Powiązane hasła

#

Widzisz błąd albo brakuje przykładu? Napisz do nas.