array.flatMap()是JavaScript中的内置函数,用于将输入数组元素展平为新数组。
此方法首先借助映射函数映射每个元素,然后将输入数组元素展平为新数组。
用法:
var A = array.flatMap(function callback(current_value, index, Array)) { // It returns the new array's elements. }
参数:
-
打回来:这是在三个参数的帮助下为新数组生成元素的函数,如下所示:
- current_value:它是输入数组元素。
- index:
- 它是可选的。
- 它是输入元素的索引。
- Array:
- 它是可选的。
- 在调用数组映射时使用。
返回值:它返回一个新数组,其元素是回调函数的返回值。
代码1:
<script>
// Taking input as an array A having some elements.
var A = [ 1, 2, 3, 4, 5 ];
// Mapping with map function.
b = A.map(x => [x * 3]);
document.write(b);
// Mapping and flatting with flatMap() function.
c = arr1.flatMap(x => [x * 3]);
document.write(c);
// Mapping and flatting with flatMap() function.
d = arr1.flatMap(x => [[ x * 3 ]]);
document.write(d);
</script>
输出:
[[3], [6], [9], [12], [15]] [3, 6, 9, 12, 15] [[3], [6], [9], [12], [15]]
代码2:也可以在reduce和concat的帮助下进行扁平化。
<script>
// Taking input as an array A having some elements.
var A = [ 1, 2, 3, 4, 5 ];
array.flatMap(x => [x * 3]);
// is equivalent to
b = A.reduce((acc, x) => acc.concat([ x * 3 ]), []);
document.write(b);
</script>
输出:
[3, 6, 9, 12, 15]
注意:此函数仅在Firefox Nightly中可用。
注:本文由纯净天空筛选整理自Kanchan_Ray大神的英文原创作品 JavaScript | array.flatMap()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。