javascript - 在javascript中将此3d数组转换为2d数组
问题描述
我正在尝试将以下 3D 数组转换为 2D 数组。目前,我的数据具有以下结构。
[ [[0,0,345], [1,0,555], ... [9,0,333]], ... [[0,9,1000], [1,9,987], ... [9,9,129]] ]
进入
[[0,0,345], [1,0,355], ... [9,0,333], [0,1,1000], [1,1,987], ... [9,9,129]]
所以第一个元素包含一个宽度值,第二个是高度值。第三个值是 0 到 1023 之间的随机值。
如您所见,宽度和高度各为 10。我正试图摆脱最外层的数组。
我试图迭代每一行以使用推送反弹到一个新数组,但不断得到不想要的形式。任何帮助将不胜感激!
解决方案
可以直接使用Array#flat
。
const arr = [ [[0,0,345], [1,0,555], [9,0,333]], [[0,9,1000], [1,9,987], [9,9,129]] ];
const res = arr.flat();
console.log(JSON.stringify(res));
推荐阅读
- python - 如何在 Spyder 中调试?
- angular - 我正在对我的 Angular 10 应用程序进行单元测试,我需要在运行时在 spec.ts 中设置会话项,以便执行下面的代码而无需将我注销
- android - ViewPager2 适配器被调用两次
- three.js - 如何将物体位置设置为其质心?
- algorithm - 如何计算以下算法的 Big-O 复杂度?
- reactjs - 在 myArray.map(x => ) 之前添加一个子元素会导致从数组中只呈现一个子元素
- java - 为什么这里的元素类型注释为Integer而不是Integer[]?
- python - 如何使用 discord.py 向多个用户添加角色?
- java - 使用全局变量的字符串到字符串数组转换
- python - 如何检查用户是否在python中连接到互联网?