Map and filter functions in javascript -


i have array follows :

let allcars = [     {         id: 1,         listid: 2,         name: "car 1",         url: "fixed 2016-w24"             }, {         id: 2,         listid: 2,         name: "car 2",         url: "fixed 2016-w24"             }, {         id: 3,         listid: 3,         name: "car 3",         url: "fixed 2016-w24"            },{         id: 1,         listid: 1,         name: "car 4",         url: "fixed 2016-w24"             },{         id: 5,         listid: 2,         name: "car 5",         url: "fixed 2016-w24"             } ]; 

and have array of cars in card, :

let cardcontent = [     {     carid: 1,     listid: 2   },   {     carid: 5,     listid: 2   } ] 

i'm trying cars id=1, listid=2 , id=5, listid=2 allcars.

i tried map through cardcontent , filter carid , list id allcars. without success.

i tried

const result = allcars.map(i => {     return {     carid: i.carid,     listid: i.listid   } }).filter(a => {     return ((a.carid === cardcontent.carid) && (a.listid === cardcontent.listid)) }); 

here jsfiddle.

any advice?

you array#filter , array#some

let allcars = [{"id":1,"listid":2,"name":"car 1","url":"fixed 2016-w24"},{"id":2,"listid":2,"name":"car 2","url":"fixed 2016-w24"},{"id":3,"listid":3,"name":"car 3","url":"fixed 2016-w24"},{"id":1,"listid":1,"name":"car 4","url":"fixed 2016-w24"},{"id":5,"listid":2,"name":"car 5","url":"fixed 2016-w24"}];  let cardcontent = [{"carid":1,"listid":2},{"carid":5,"listid":2}]    const result = allcars.filter(function(e) {    return cardcontent.some(function(a) {      return e.id == a.carid && e.listid == a.listid;    })  })    console.log(result);


Comments