groupArr(list: Array<any>, field: string, fieldName: string): Array<any> { var fieldList: Array<any> = [], att = []; list.forEach((e) => { if (!fieldList.some((m: any) => m.id == e[field])) { fieldList.push({ id: e[field], name: e[fieldName] }); } }); for (let item of fieldList) { var arr = list.filter((e) => { return e[field] == item.id; }); att.push({ GroupId: item.id, GroupName: item.name, list: arr, }); } console.log(att); return att; }