31. Array.flat()
是 JavaScript 中的数组方法之一,用于将嵌套的子数组(多维数组)“扁平化”,即将多层嵌套的数组结构转换为单层数组。
var arr1 = [1, 2, [3, 4]];
arr1.flat();
// [1, 2, 3, 4]
var arr2 = [1, 2, [3, 4, [5, 6]]];
arr2.flat();
// [1, 2, 3, 4, [5, 6]]
var arr3 = [1, 2, [3, 4, [5, 6]]];
arr3.flat(2);
// [1, 2, 3, 4, 5, 6]
//使用 Infinity,可展开任意深度的嵌套数组
var arr4 = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]];
arr4.flat(Infinity);
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
flat(depth) :指定要提取嵌套数组的结构深度,默认值为 1。
32. Array.flatMap()
是 JavaScript 中的数组方法,它结合了 map()
和 flat()
方法的功能。它首先对数组的每个元素执行提供的回调函数,然后将结果扁平化为一个新数组。
const array = [1, 2, 3];
const doubledAndFlattened = array.flatMap(num => [num * 2]);
console.log(doubledAndFlattened); // 输出: [2, 4, 6],将每个元素翻倍后扁平化为新数组
这个方法建议去菜鸟教程看详情