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
Post a Comment