首页 > 解决方案 > 数组数据类型操作

问题描述

我有一组对象数组。所以它看起来像 [[{}{}],[{}{}{}],[{}{}], [{}{}{}{}]]......等等我需要遍历这个数组中的每个对象。问题是这需要 a nested for loop,这还不错,但我想知道当我将它放入原始数组时是否有任何方法可以使用扩展运算符。 outerArray.push(...innerArray),类似的东西。那没有用,但是有类似的东西吗?

标签: javascriptarraysecmascript-6

解决方案


您可以使用Array.prototype.flat将嵌套数组转换为展平数组

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]

对于较旧的浏览器,您可以参考其他答案


推荐阅读