JavaScript flat() 方法

JavaScript flat() 方法 JavaScript Array 对象

实例

按照一个可指定的深度递归遍历数组:

constarr1 = [0, 1, 2, [3, 4]]; document.getElementById("demo1").innerHTML = arr1.flat(); constarr2 = [0, 1, 2, [[[3, 4]]]]; document.getElementById("demo2").innerHTML = arr2.flat(2);

尝试一下 »

定义和用法

flat() 方法方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回。

flat() 方法返回一个包含将数组与子数组中所有元素的新数组。


浏览器支持

表格中的数字表示支持该方法的第一个浏览器版本号。

方法
flat()45.012.032.0925.0

语法

flat()
flat(depth)

参数

参数描述
depth指定要提取嵌套数组的结构深度,默认值为 1。

技术细节

返回值:数组。
JavaScript 版本:ECMAScript 6

更多实例

扁平化嵌套数组

实例

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() 方法会移除数组中的空项:

实例

var arr4 =[1,2,,4,5];
arr4.flat();
// [1, 2, 4, 5]


JavaScript flat() 方法 JavaScript Array 对象