Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как правильно удалить пустые массивы? (https://javascript.ru/forum/dom-window/76836-kak-pravilno-udalit-pustye-massivy.html)

gsdev99 19.02.2019 13:29

Как правильно удалить пустые массивы?
 
Здравствуйте. Подсскажите пожалуйста как правильно решить следующую задачу. У меня есть данные.
const arr = [
  [{id: 1, value: 'item 1'}, {id: 2, value: 'item 3'}, {id: 3, value: 'item 3'}, {id: 4, value: 'item 4'}],
  [{id: 1, value: 'item 1'}, {id: 2, value: 'item 3'}, {id: 3, value: 'item 3'}, {id: 4, value: '-'}],
  [{id: 1, value: 'item 1'}, {id: 2, value: 'item 3'}, {id: 3, value: 'item 3'}, {id: 4, value: 'item 4'}],
  [{id: 1, value: 'item 1'}, {id: 2, value: '-'}, {id: 3, value: 'item 3'}, {id: 4, value: 'item 4'}]
]

Мне необходимо получить следующий массив, т.е. исключить те элементы в которых присутствуют: value: '-'
const arrM = [
  [{id: 1, value: 'item 1'}, {id: 2, value: 'item 3'}, {id: 3, value: 'item 3'}, {id: 4, value: 'item 4'}],
  [{id: 1, value: 'item 1'}, {id: 2, value: 'item 3'}, {id: 3, value: 'item 3'}, {id: 4, value: 'item 4'}]
]

Nexus 19.02.2019 13:36

const arr = [
  [{id: 1, value: 'item 1'}, {id: 2, value: 'item 3'}, {id: 3, value: 'item 3'}, {id: 4, value: 'item 4'}],
  [{id: 1, value: 'item 1'}, {id: 2, value: 'item 3'}, {id: 3, value: 'item 3'}, {id: 4, value: '-'}],
  [{id: 1, value: 'item 1'}, {id: 2, value: 'item 3'}, {id: 3, value: 'item 3'}, {id: 4, value: 'item 4'}],
  [{id: 1, value: 'item 1'}, {id: 2, value: '-'}, {id: 3, value: 'item 3'}, {id: 4, value: 'item 4'}]
]

const arrM=arr.filter(list=>{
	return list.every(item=>item.value!=='-');
});

gsdev99 19.02.2019 14:59

Спасибо за помощь.


Часовой пояс GMT +3, время: 17:41.