打印每个小组工资和部门工资
部门 | 小组 | 姓名 | 工资 |
前端部门 | 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);
以上内容为个人总结,若有错误,欢迎留言指正,谢谢!!!!!!!