Metod flat
Metod flat smanjuje nivo
ugnježdenja multidimenzionalnog niza.
Može ili da napravi niz jednodimenzionalnim,
ili da smanji dimenzionalnost za datu
vrednost.
Sintaksa
let newArray = niz.flat(nivo podizanja);
Primer
Hajde da dobijemo novi niz, ne navodeći u parametru nikakvu vrednost:
let arr = ['a', 'b', ['c', 'd']];
let res = arr.flat();
console.log(res);
Kao rezultat izvršavanja koda videmo da su podnizovi podignuti za jedan nivo:
['a', 'b', 'c', 'd']
Primer
A sada hajde da primenimo metod
flat na niz sa dva nivoa
ugnježdenja:
let arr = ['a', 'b', ['c', 'd', ['e', 'f']]];
let res = arr.flat();
console.log(res);
Rezultat izvršavanja koda:
['a', 'b', 'c', 'd', ['e', 'f']]
Primer
Hajde da navedemo nivo ugnježdenja:
let arr = ['a', 'b', ['c', 'd', ['e', 'f']]];
let res = arr.flat(2);
console.log(res);
Rezultat izvršavanja koda:
['a', 'b', 'c', 'd', 'e', 'f']
Primer
Ako ne želimo da se zamaramo sa nivoom ugnježdenja,
već da spojimo ceo niz, koristimo parametar Infinity:
let arr = ['a', 'b', ['c', 'd', ['e', 'f', ['g', 'h', ['i']]]]];
let res = arr.flat(Infinity);
console.log(res);
Rezultat izvršavanja koda:
[
'a', 'b', 'c',
'd', 'e', 'f',
'g', 'h', 'i'
]
Pogledajte takođe
-
metod
flatMap,
koji vraća niz od elemenata nakon primene funkcije