JavaScript Array flatMap()

定义和用法

flatMap() 方法对数组中的每个元素执行映射操作,并创建新的扁平化数组。

flatMap() 通过为每个数组元素调用一个函数来创建新数组。

flatMap() 不会为空的数组元素执行函数。

flatMap() 不会改变原始数组。

另请参阅:

Array map() 方法

Array flat() 方法

Array filter() 方法

Array forEach() 方法

实例

const myArr = [1, 2, 3, 4, 5, 6];
const newArr = myArr.flatMap(x => [x, x * 10]);

亲自试一试

语法

array.flatMap(function(currentValue, index, arr), thisValue)

参数

参数 描述
function() 必需。为每个数组元素运行的函数。
currentValue 必需。当前元素的值。
index 可选。当前元素的索引。
arr 可选。当前元素所属的数组。
thisValue

可选。传递给函数的 this 值。

默认值为 undefined。

返回值

类型 描述
数组 数组,包含回调函数的结果元素,并将其扁平化。

浏览器支持

自 2020 年 1 月起,所有现代浏览器均支持 JavaScript 数组 flatMap() 方法:

Chrome Edge Firefox Safari Opera
Chrome 69 Edge 79 Firefox 62 Safari 12 Opera 56
2018 年 9 月 2020 年 1 月 2018 年 9 月 2018 年 9 月 2018 年 9 月