1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
| /**
| * 根据key值去除对象数组中的重复项
| * @param key 对比的属性名
| * @param list 需要去重的对象数组
| * @returns {[]}
| */
| function uniqueByKey(key, list) {
| let newList = [];
| for(let i=0; i<list.length; i++) {
| let item = list[i];
| if(!checkItemIsIn(key, item, newList)) {
| newList.push(item);
| }
| }
| return newList;
| }
|
| /**
| * 根据key值校验item是否已经存在list中
| * @param key 对比的属性名
| * @param item 对比的对象
| * @param list 对比的对象集合
| * @returns {boolean}
| */
| function checkItemIsIn(key, item, list) {
| let isIn = false;
| for(let i=0; i<list.length; i++) {
| let list_item = list[i];
| if(item[key] == list_item[key]) {
| isIn = true;
| break;
| }
| }
| return isIn;
| }
| export default uniqueByKey;
|
|