JavaScript将多个数组转换成二维数组(echarts多维数组转换,js将多个数组转换成二维数组)

蔚落 2023-10-08 23:59 177阅读 0赞

简述:我们在写echarts的时候,数据通常是以数组的形式呈现的,然而有时候我们需要将多个数组合并为一个二维数组,以便更方便地进行操作和展示,这里分享下怎么将多个数组转换成二维数组。

代码转换实例,其实很简单

一、第一种

  1. const arr = [1, 2, 3, 4];
  2. const arr2 = [4, 3, 2, 1];
  3. const res = [arr, arr2];
  4. console.log(res);

输出

944d6515f726428eb69ae238b1c5c796.png

可以看到,直接把两个数组写在同一个数组,赋值给新的数组就行;

二、第二种

  1. const arr = [1, 2, 3, 4];
  2. const arr2 = [4, 3, 2, 1];
  3. const res2 = [arr].concat([arr2])
  4. console.log(res2);

输出

8309693bd2c54f9bb5590d5c20304d8f.png

可以看到,使用concat方法拼接数组时,直接在数组上再嵌套一层数组也可以实现,效果同上;

这里顺便说下,如何将多维数组转换成一维数组?

  1. const arr3 = [1,[2,3],[4,[5,[6]],7]];
  2. const res3 = arr3.flat(Infinity)
  3. 这里的Infinityflat方法默认参数,默认转换为一维数组
  4. console.log(res3);

输出

b4387b6f7f364937b5e220b7b3f0a236.png 可以看到,使用flat方法的默认参数Infinity,直接把多维数组转换成了一维数组;

其它情况

  1. const arr3 = [1,[2,3],[4,[5,[6]],7]];
  2. 1flat不传参数时,默认去除一层数组嵌套
  3. console.log(arr3.flat());
  4. //控制台输出 [1,2,3,4,[5,[6]],7];
  5. 2flat传入一个整数参数时,即拉平的层数
  6. console.log(arr3.flat(2));
  7. //控制台输出 [1,2,3,4,5,[6],7];
  8. 3flat传入小于等于0的整数时,将返回原数组
  9. console.log(arr3.flat(0));
  10. //控制台输出 [1,[2,3],[4,[5,[6]],7]]
  11. console.log(arr3.flat(-1));
  12. //控制台输出 [1,[2,3],[4,[5,[6]],7]]

发表评论

表情:
评论列表 (有 0 条评论,177人围观)

还没有评论,来说两句吧...

相关阅读