Get to know MDN better
This page was translated from English by the community. Learn more and join the MDN Web Docs community.
This feature is well established and works across many devices and browser versions. It’s been available across browsers since январь 2020 г..
Метод flatMap() сначала применяет функцию к каждому элементу, а затем преобразует полученный результат в плоскую структуру и помещает в новый массив. Это идентично map функции, с последующим применением функции flat с параметром depth ( глубина ) равным 1, но flatMap часто бывает полезным, так как работает немного более эффективно.
Функция которая производит элементы нового массива, принимает три аргумента:
currentValueТекущий обрабатываемый элемент массива.
indexНеобязательныйИндекс обрабатываемого элемента в массиве.
arrayНеобязательныйМассив по которому осуществляется обход.
thisArgНеобязательныйЗначение используемое в качестве this при вызове функции callback.
Новый массив, каждый элемент которого является результатом выполнения функции callback и "поднят" на уровень 1.
Смотрите Array.prototype.map() для детального описания callback функции. Метод flatMap идентичен методу map с последующим вызовом flat с параметром depth 1.
Хотя результат полученный в примере выше можно было получить используя просто map, ниже мы рассмотрим пример где flatMap является более эффективным.
Давайте сгенерируем список слов из списка предложений.
Обратите внимание, длина списка вывода может отличаться от длины списка ввода.
//=> [1, 2, 3, 4, 5, 6, 7, 8, 9]
//=> [1, 2, 3, 4, 5, 6, 7, 8, 9]
| ECMAScript® 2027 Language Specification # sec-array.prototype.flatmap |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 24 июн. 2025 г. by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.