Я хочу реализовать фильтр тегов для поиска и получить массив записей (переменная: записи), например, со многими записями:
"entries":[
{
"id":1,
"details":"text",
"tags":[
{
"id":9,
"label":"Label9"
},
{
"id":6,
"label":"Label6"
},
],
"date":"Mar 8, 2018 2:45:30 PM"
}]
Я хочу отфильтровать этот массив с другим массивом тегов(переменная: теги) вот так:
"tags":[
{
"id":6,
"label":"Label6"
}
В конце мне нужен массив тех записей, которые содержат все теги в массиве тегов.]
Я написал этот код, но что-то не так.Сравнивает идентификатор каждого тега.
const entries = [{
"id": 1,
"details": "text",
"tags": [{
"id": 9,
"label": "Label9"
},
{
"id": 6,
"label": "Label6"
},
],
"date": "Mar 8, 2018 2:45:30 PM"
}]
const tags = [{
"id": 6,
"label": "Label6"
}]
function containSearchTag(tags) {
return entries.filter(function(el) {
for (let i = 0; i < el.tags.length; i++) {
for (let j = 0; j < tags.length; j++) {
return el.tags[i].id === tags[j].id;
}
}
});
}
console.log(containSearchTag(tags));