Veneomin
@Veneomin

Как проверить есть ли все элементы в массиве по разным полям?

Есть масив arr1
[ 
	{ id: '19780', count: '1' },
	{ id: '19779', count: '2' },
	{ id: '19733', count: '1' },
	{ id: '19777', count: '1' } 
]

Есть массив arr2
[
	{ id: 19694, min_ostatok: '1' },
	{ id: 19714, min_ostatok: '3' },
	{ id: 19775, min_ostatok: '1' },
]

Нужно получить на выходе след результат: если в arr1нету всех элементов arr2, то записать arr1.id в err1. Если в arr1 есть такой элемент но его count < min_ostatok то записать arr1.id в err2
  • Вопрос задан
  • 171 просмотр
Пригласить эксперта
Ответы на вопрос 1
modestfake
@modestfake
const err1 = []
const err2 = []

arr2.forEach(item => {
  const isElemenInArr1 = arr1.some(el => el.id === item.id)

  if (!isElemenInArr1) {
    err1.push(item.id)
  } else {
    const element = arr1.find(el => el.id === item.id)
    if (element.count < item.min_ostatok) err2.push(item.id)
  }
})
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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