Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.04.2020, 18:12
Профессор
Отправить личное сообщение для Роман Андреевич Посмотреть профиль Найти все сообщения от Роман Андреевич
 
Регистрация: 12.08.2016
Сообщений: 299

Отфильтровать массив по объекту?
Коллеги доброго времени суток, подскажите как отфильтровать массив по объекту:

<code lang="javascript">

const arr = [
{
"id" : 1,
"city" : "Москва",
"title" : "ООО Мавзолей"
"type" : ["носки", "аромат"]
},
{
"id" : 2,
"city" : "Татарск",
"title" : "ООО Татарск Продакс"
"type" : ["коровы", "ЖБ плиты"]
}
];

const filter = {
city: `Татарск`,
title: ``,
type: `коровы`
};
</code>

соответственно нужно фильтровать arr по значениям filter. Заранее благодарю
Ответить с цитированием
  #2 (permalink)  
Старый 20.04.2020, 18:45
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Роман Андреевич,
const arr = [
{
"id" : 1,
"city" : "Москва",
"title" : "ООО Мавзолей",
"type" : ["носки", "аромат"]
},
{
"id" : 2,
"city" : "Татарск",
"title" : "ООО Татарск Продакс",
"type" : ["коровы", "ЖБ плиты"]
}
];

const filter = {id : 2,
city: `Татарск`,
title: ``,
type: `коровы`
};

const rezult = arr.filter(el => Object.keys(filter).every(key => {{
const str = filter[key];
if(!str) return true;
const obj = el[key];
if(!obj) return false;
if(Array.isArray(obj)) return obj.some(a => a.includes(str));
else return obj.toString().includes(str);

}}))
console.log(rezult)
Ответить с цитированием
  #3 (permalink)  
Старый 20.04.2020, 18:54
Профессор
Отправить личное сообщение для Роман Андреевич Посмотреть профиль Найти все сообщения от Роман Андреевич
 
Регистрация: 12.08.2016
Сообщений: 299

рони, спасибо, помогло
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление объекта в массив в цикле Dark19 Элементы интерфейса 3 11.12.2016 23:11
Пустой массив при сохранении в localStorage kichkun Общие вопросы Javascript 1 19.11.2016 13:58
Чтение данных из файла в массив TheSingleElk Общие вопросы Javascript 2 16.06.2016 01:09
добавить элемент в массив, принадлежащий объекту gorda Элементы интерфейса 2 08.11.2015 21:27
Как создать многомерный массив FRIE Общие вопросы Javascript 29 02.06.2010 19:14