Я получаю данные из API, который иногда дает мне несколько объектов с одинаковыми или очень похожими значениями, которые я хочу удалить.
Например, я могу получить обратно:
[
{
"Name": "blah",
"Date": "1992-02-18T00:00:00.000Z",
"Language": "English",
},
{
"Name": "blahzay",
"Date": "1998-02-18T00:00:00.000Z",
"Language": "French",
}, {
"Name": "blah", // same name, no problem
"Date": "1999-02-18T00:00:00.000Z", // different date
"Language": "English", // but same language
},
]
Итак, я хочу проверить, чтобы ни у двух объектов не было ключа с одинаковым значением «Язык» (в данном случае «Engli sh»).
Я хотел бы получить общий процесс отфильтровывания всего объекта, если его значение «Language» дублируется, с дополнительной проблемой, когда каждый раз возвращается не одинаковое количество объектов. Итак, учитывая динамическое c количество объектов в массиве.
Здесь есть пример: Неожиданный результат при фильтрации одного массива объектов по двум другим массивам объектов
но предполагается, что у вас есть установленное количество объектов в массиве, и вы каждый раз сравниваете содержимое этих же объектов.
Я бы искал способ сравнить
arrayName[eachObject].Language === "English"
и оставьте один из объектов, но любые другие (неизвестное количество объектов) должны быть отфильтрованы, скорее всего, с использованием метода .filter () вместе с .map ().