Первый - это массив объектов:
let objectArray = [{
FullName: "Person1",
PersonId: "id1"
},
{
FullName: "Person2",
PersonId: "id2"
},
{
FullName: "Person3",
PersonId: "id3"
},
{
FullName: "Person4",
PersonId: "id4"
}
];
Второй - массив строк, содержащих несколько идентификаторов.
let idsArray= ["id1", "id2", "id3"];
Мне нужно удалить объекты первого массива, чьи идентификаторы содержатся во втором массиве.
Ожидаемый результат:
firstArray = [{
FullName: "Person4",
PersonId: "id4"
}];
Изучение документации Linqjs
Я обнаружил, что метод Except()
позволяет мне удалять элементы из первого массива, используя второй в качестве «фильтра».
Чтобы использовать этот метод, мне нужно создать новый массив из objectArray
, который содержит только элементы, идентификаторы которых содержатся в idsArray
, чтобы использовать его в качестве параметра.
Пример:
let filteredArray = Enumerable.From(objectArray).Except(theNewArray).ToArray();
Для создания этого нового массива я могу использовать метод Where()
из Linqjs
.
Моя проблема начинается здесь, потому что я не знаю, как создать этот новый массив, учитывая, что у меня есть массив идентификаторов для фильтрации.