Array.flat() - створює новий масив який містить всі елементи вкладених масивів до вказаної глибини.
Array.flat( depth );
Array - об'єкт Array.
depth - число яке вказує глибину до якого рівня вкладеності масивів має відбуватись вирівнювання. За замовчуванням 1. Також можна вказати Infinity щоб були 100% усі рівні вкладеності.
flat() метод об'єкта Array який повертає новий масив який містить всі елементи вкаладених масивів до вказаної рівня вкладеності.
Метод не підтримують старі браузери так як був доданий у ES2019.
Альтернативою методу flat можна виконати за допомогою reduce() і concat():
var mas=[1,[2.1,2.2],3];
var arr=mas.reduce( function(a, b){return a.concat(b)}, []);
alert(arr);
var mas=['1', '2', '3', ['4.1', '4.2']];
if(Array.flat){
var arr=mas.flat();
alert(arr); //['1', '2', '3', '4.1', '4.2']
}else alert('Ваш браузер не підтримує метод flat.');
var mas=[1, 2, ['3.1', ['3.2.1', '3.2.2']] ];
if([].flat){
mas2=mas.flat(2);
alert(mas2); //[1, 2, '3.1', ['3.2.1', '3.2.2'] ]
}else alert('Ваш браузер не підтримує метод flat');
var arr=[1, 2, 3, , , , 7, 8];
var mas=arr.flat();
alert( mas ); //[1, 2, 3, 7, 8]