javascript - 数组数据类型操作
问题描述
我有一组对象数组。所以它看起来像
[[{}{}],[{}{}{}],[{}{}], [{}{}{}{}]]
......等等我需要遍历这个数组中的每个对象。问题是这需要 a nested for loop
,这还不错,但我想知道当我将它放入原始数组时是否有任何方法可以使用扩展运算符。
outerArray.push(...innerArray)
,类似的东西。那没有用,但是有类似的东西吗?
解决方案
您可以使用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]
对于较旧的浏览器,您可以参考其他答案
推荐阅读
- c++ - 单击错误时的Vscode“无法打开[文件]:无法读取文件”消息
- python - 有人在 macOS 上安装 CartoPY 吗?
- c++ - 为什么在我的 Linux 中,当当前工作目录由 root 拥有(例如 /usr/bin)时,我在编译 c++ 时无法链接任何库?
- css - Chrome 手机是否有一些功能可以在电池电量不足时减少 CSS 动画?
- azure-devops - 如何使用特定提交通过 Azure DevOps REST API 对新构建进行排队?
- sql - Oracle SQL 查询以获取单列中的多对多记录
- excel - 切片 URL 字符串以提取特定部分
- python - 我可以为这个大型 excel 文件数据集运行什么样的分析?
- python - python中搜索字符串和字符串列表之间的最高百分比Levenshtein距离的最快方法是什么?
- java - 当线程等待java中的输入时,我可以停止线程吗?