Array.prototype.flat
Раскрывает вложенные массивы в один.
Доступно с: ES2019
Синтаксис
array.flat(depth)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| depth | number | Необязательный. На сколько уровней раскрывать вложенность. По умолчанию 1. |
Возвращаемое значение
ArrayНовый «плоский» массив.
Примеры
Один уровень вложенности:
console.log([[1, 2], [3, 4]].flat().join(', '));Результат:
1, 2, 3, 4Глубокая вложенность — depth или Infinity:
const nested = [1, [2, [3, [4]]]];
console.log(nested.flat().length);
console.log(nested.flat(Infinity).join(', '));Результат:
3
1, 2, 3, 4Примечания
Пустые места в массиве (например [1, , 3]) при этом удаляются. Исходный массив не меняется.
См. также
- Array.prototype.flatMap — Применяет функцию к каждому элементу и раскрывает результат на один уровень.
- Array.prototype.concat — Объединяет массивы в новый массив.
Вопросы и ответы по теме
В учебнике
- Методы массивов — Как добавлять и удалять элементы массива в JavaScript: push, pop, shift, unshift, slice, splice, concat и join.