我要搜索复杂对象的列表。
我的列表如下:
private employees: Employee[] = [
{
name: 'Mary Jay',
departmentsList: [1, 2, 3], //those are Id-s of departments from the list below
emailList: [ 'emp1@gamil.com', 'emp2@gmail.com', 'emp3@gmail.com' ]
}
];
private departments: Department[] = [
{ id: 1, name: 'dep1' },
{ id: 2, name: 'dep2' },
{ id: 3, name: 'dep3' },
{ id: 4, name: 'dep4' },
{ id: 5, name: 'dep5' },
{ id: 6, name: 'dep6' }
];
我想要实现的是通过部门名称和电子邮件实现搜索过滤器。
有人知道如何从遍历此复杂对象列表的查找表中获取部门名称吗?使用此功能,我可以搜索电子邮件列表和使用其名称的部门列表。
谢谢!
答案 0 :(得分:0)
departments = [
{ id: 1, name: 'dep1' },
{ id: 2, name: 'dep2' },
{ id: 3, name: 'dep3' },
{ id: 4, name: 'dep4' },
{ id: 5, name: 'dep5' },
{ id: 6, name: 'dep6' }
]
const valueFromInput = 'dep';
const allDepartmentNames = departments.map(department => department.name);
const result = allDepartmentNames.filter(name => name.includes(valueFromInput));
console.log(result)