数据处理二维数组转单数组

需求:后端返回的数据是二维的,类似[[],[],[]];数据需要展示用到的是单数组[,,,,]这种,那么就需要对数据进行处理

方法一:

flat()方法,方法可以将嵌套的数组展平为一维数组。默认情况下,它会展平到一层。如果二维数组的深度更深,也可以传递参数来控制展平的深度

//如果你的数组更深,可以传递参数来展平更多层级; 例如,flat(2) 会展平到深度为2的层级
const array2D = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
const array1D = array2D.flat();

console.log(array1D); // [1, 2, 3, 4, 5, 6, 7, 8, 9]

方法二:

reduce()方法结合concat()方法 来将二维数组展平为一维数组。

const array2D = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
const array1D = array2D.reduce((acc, curr) => acc.concat(curr), []);

console.log(array1D); // [1, 2, 3, 4, 5, 6, 7, 8, 9]

以上两种是较为方便快捷的形式,也可以使用for循环转单数组

const array2D = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
const array1D = [];

for (const innerArray of array2D) {
  for (const item of innerArray) {
    array1D.push(item);
  }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值