Riveran
@Riveran
Astartes

Как найти данные в массиве?

Добрый день, у меня есть массив из 5 объектов такого вида
{
createdat: "2019-04-30T08:00:00.000Z"
error: ""
groupid: 5
id: 5571
message: "Sensor has not been seen more than 1 day"
parameter: null
sensorid: "704"
status: "OPEN"
trigger: null
triggervalue: null
type: "WARN"
}


и есть ещё 1 массив состоящий из 500 таких же объектов но с дополненным содержимым, как мне из этих 500 объектов найти те 5 объектов из другого массива по id?
  • Вопрос задан
  • 100 просмотров
Решения вопроса 4
rockon404
@rockon404
Frontend Developer
const res = a1.filter(i => a2.some(j => j.id === i.id));
Ответ написан
Комментировать
hzzzzl
@hzzzzl
a1 = массив из 5 элементов
a2 = массив из 500

ids = a1.map(a => a.id)   // айдишники
a2.filter(a => ids.includes(a.id))   // те самые 5 из 500


5cc821a55c394304295070.jpeg
Ответ написан
Комментировать
radar4ick
@radar4ick
web-developer
let result = [];
array5.forEach(function(obj){
  let needle = array500.find(function(el){
               return el.id == obj.id         
        })
  if(!!needle){
       result.push(needle);
   }
});
Ответ написан
Комментировать
@Sayto
const requiredIds = array1.map(({ id }) => id);

const requiredObjects = array2.filter(({ id }) => requiredIds.includes(id));
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы