打印每个小组工资和部门工资

部门 小组 姓名 工资
前端部门 UI设计 张1 10
前端部门 UI设计 张2 10
前端部门 UI设计 张3 10
前端部门 UI设计 张4 10
前端部门 代码小组 张5 10
前端部门 代码小组 张6 10
后台部门 数据库设计小组 张7 10
后台部门 数据库设计小组 张8 10
后台部门 代码小组 张9 10
后台部门 代码小组 张10 10
人事部门 接待小组 张11 10
人事部门 接待小组 张12 10
人事部门 接待小组 张13 10
人事部门 接待小组 张14 10
人事部门 招聘小组 张15 10
人事部门 前台小组 张16 10
人事部门 前台小组 张17 10
需求1、每当遇到不同的小组就打印上一个一组成员所有的工资。
需求2、每当遇到不同的部门就要打印上一个部门所有工资。
注意最后一条数据的处理。
  1 let arr = [{
  2                 "money": 10,
  3                 "dpartMent": '前端部门',
  4                 "group": 'UI设计小组',
  5                 "name": '张1'
  6             }, {
  7                 "money": 10,
  8                 "dpartMent": '前端部门',
  9                 "group": 'UI设计小组',
 10                 "name": '张2'
 11             }, {
 12                 "money": 10,
 13                 "dpartMent": '前端部门',
 14                 "group": 'UI设计小组',
 15                 "name": '张3'
 16 
 17             },
 18             {
 19                 "money": 10,
 20                 "dpartMent": '前端部门',
 21                 "group": 'UI设计小组',
 22                 "name": '张17'
 23             },
 24             {
 25                 "money": 10,
 26                 "dpartMent": '前端部门',
 27                 "group": '代码小组',
 28                 "name": '张4'
 29             }, {
 30                 "money": 10,
 31                 "dpartMent": '前端部门',
 32                 "group": '代码小组',
 33                 "name": '张5'
 34             }, {
 35                 "money": 10,
 36                 "dpartMent": '后端部门',
 37                 "group": '数据库设计小组',
 38                 "name": '张6'
 39             }, {
 40                 "money": 10,
 41                 "dpartMent": '后端部门',
 42                 "group": '数据库设计小组',
 43                 "name": '张7'
 44             }, {
 45                 "money": 10,
 46                 "dpartMent": '后端部门',
 47                 "group": '代码小组',
 48                 "name": '张8'
 49             }, {
 50                 "money": 10,
 51                 "dpartMent": '后端部门',
 52                 "group": '代码小组',
 53                 "name": '张9'
 54             }, {
 55                 "money": 10,
 56                 "dpartMent": '人事部门',
 57                 "group": '接待小组',
 58                 "name": '张10'
 59             }, {
 60                 "money": 10,
 61                 "dpartMent": '人事部门',
 62                 "group": '接待小组',
 63                 "name": '张11'
 64             }, {
 65                 "money": 10,
 66                 "dpartMent": '人事部门',
 67                 "group": '接待小组',
 68                 "name": '张12'
 69             },
 70             {
 71                 "money": 10,
 72                 "dpartMent": '人事部门',
 73                 "group": '接待小组',
 74                 "name": '张13'
 75             },
 76             {
 77                 "money": 10,
 78                 "dpartMent": '人事部门',
 79                 "group": '招聘小组',
 80                 "name": '张14'
 81             }, {
 82                 "money": 10,
 83                 "dpartMent": '人事部门',
 84                 "group": '前台小组',
 85                 "name": '张15'
 86             }, {
 87                 "money": 10,
 88                 "dpartMent": '人事部门',
 89                 "group": '前台小组',
 90                 "name": '张16'
 91             },
 92         ];
 93 
 94         function printMoney(arr) {
 95             let htmlText = '';
 96             let len = arr.length,
 97                 sum = arr[0].money || 0,
 98                 temp = 0;
 99             for (var i = 0; i < len - 1; i++) {
100                 if (arr[i].dpartMent === arr[i + 1].dpartMent) {
101                     if (arr[i].group === arr[i + 1].group) {
102                         sum = sum + arr[i + 1].money;
103                     } else {
104                         htmlText = htmlText + arr[i].dpartMent + ' --- ' + arr[i].group + ' --- ' + sum + '<br />';
105                         temp = temp + sum;
106                         sum = arr[i + 1].money;
107                     }
108                 } else {
109                     temp = temp + sum;
110                     htmlText = htmlText + arr[i].dpartMent + ' --- ' + arr[i].group + ' --- ' + sum + '<br />';
111                     htmlText = htmlText + arr[i].dpartMent + ' --- ' + temp + '<br />';
112                     temp = 0;
113                     sum = arr[i + 1].money;
114                 }
115             }
116             htmlText = htmlText + arr[i].dpartMent + ' --- ' + arr[i].group + ' --- ' + sum + '<br />';
117             temp = temp + sum;
118             htmlText = htmlText + arr[i].dpartMent + ' --- ' + temp + '<br />';
119             document.write(htmlText);
120         }
121         printMoney(arr);

 

猜你喜欢

转载自www.cnblogs.com/gzy-tw/p/11276401.html