javascript - Nested array is not returning deepest obj -
i working lodash
, trying obtain object nested in array. need bettypes
, put var needdeepestobj
bettypes
using _.filter
var deepestobj = function(betslipdata) { var needdeepestobj = _.filter(betslipdata.customerbettypes, function(betindex) { return _.filter(betindex.bettypes, function(bettypes) { console.log('1', bettypes); //returns need return bettypes; }); }); console.log('2', needdeepestobj); //returns first _.filter param *betindex* };
so, how can reach scope contains bettypes
?
this betindex
param returns in browser console.
{ "header": { "name": "straights", "priority": "1" }, "bettypes": [ { "id": "1", "name": "straight", "buypoints": "y", "maxpoints": "3", "minpoints": "0", "isavailable": "1", "placebetisavailable": "1", "reasonplacebetnotavailable": "", "isselected": "0", "priority": 1 } ], "header": { "name": "straights", "priority": "1" }, "bettypes": [ { "id": "1", "name": "straight", "buypoints": "y", "maxpoints": "3", "minpoints": "0", "isavailable": "1", "placebetisavailable": "1", "reasonplacebetnotavailable": "", "isselected": "0", "priority": 1 } ], "header": { "name": "straights", "priority": "1" }, "bettypes": [ { "id": "1", "name": "straight", "buypoints": "y", "maxpoints": "3", "minpoints": "0", "isavailable": "1", "placebetisavailable": "1", "reasonplacebetnotavailable": "", "isselected": "0", "priority": 1 } ], "header": { "name": "straights", "priority": "1" }, "bettypes": [ { "id": "1", "name": "straight", "buypoints": "y", "maxpoints": "3", "minpoints": "0", "isavailable": "1", "placebetisavailable": "1", "reasonplacebetnotavailable": "", "isselected": "0", "priority": 1 } ] }
so, need bettypes
, , betindex
returns json pasted above.
update
obviously, big json, contains thousand "header" , "bettypes" properties. need iterate on json in order process once properties.
i'm not sure if follow question exactly. answer under assumption thatl:
betslipdata.customerbettypes = [{ header: {}, bettypes: [{}] }, ...]
then it's simple:
var needdeepestobj = _(betslipdata.customerbettypes).map(function (bet) { return bet.bettypes; }).flatten().value();
this produce array of objects each array of bettypes within each bet.
it lot if show example of betslipdata.customerbettypes , exact result looking for, whether it's array or object, specific keys, etc.
are looking specific bettype?
Comments
Post a Comment