-
-
3516853030 小试身手Lv3
发表于2020-11-13 11:56
楼主
本帖最后由 3516853030 于 2020-11-13 13:53 编辑
1.需求
(1) 数组如何进行行列转置
例:把这种格式的数组:[["32","201902","201902","201902"],["420000128","130427","410822","230223"]]
变成这种:[[32,420000128],[201902,130427],[201902,410822],[201902,230223]]
(2) 数组如何进行自定义处理
例:把这种格式的数组:[["32","201902","201902","201902"],["420000128","130427","410822","230223"]]变成这种:[[32,420000128],[201902,130427,410822,230223]]
2.场景
背景:对分析表浮动出来的数据进行echart第三方适配的时候会有对数组进行处理的需求
对<#=[A1$,B1$]#>直接浮动出来的数据如何处理能达到1->(1)(2)的效果呢?
<1>列转行效果可以直接用表达式达到效果:<#=[A1$,B1$].matrix()#>
效果:
<2>自定义效果需要用脚本来实现:
复制代码效果:
1.需求
(1) 数组如何进行行列转置
例:把这种格式的数组:[["32","201902","201902","201902"],["420000128","130427","410822","230223"]]
变成这种:[[32,420000128],[201902,130427],[201902,410822],[201902,230223]]
(2) 数组如何进行自定义处理
例:把这种格式的数组:[["32","201902","201902","201902"],["420000128","130427","410822","230223"]]变成这种:[[32,420000128],[201902,130427,410822,230223]]
2.场景
背景:对分析表浮动出来的数据进行echart第三方适配的时候会有对数组进行处理的需求
对<#=[A1$,B1$]#>直接浮动出来的数据如何处理能达到1->(1)(2)的效果呢?

<1>列转行效果可以直接用表达式达到效果:<#=[A1$,B1$].matrix()#>

效果:

<2>自定义效果需要用脚本来实现:
- var a=<#=[A1$,B1$].matrix()#>;
- var al=a.length;
- for(i=1;i<al;i++)
- {
- if(a[i-1][0]==a[i][0])
- {
- a[i-1]=a[i-1].concat(a[i]);
- a.remove(a[i]);
- al=al-1;
- i=i-1;
- }
- a[i]=Array.from(new Set(a[i]));
- }
- console.log(a);
