arrays - How to filter the object using lodash or javascript -
i getting object server,
var data = { test1: { documents: [] }, test2: { documents: [{ vid: 'sdfas23', typeid: '81', isdeleted: false }], answer: true }, test3: { documents: [{ vid: 'h1mjinyi', typeid: '82', isdeleted: false }], answer: true } }
i want filter typeid object, result expecting
[81,82]
can on this.
in case have 1 or 0 objects in documents
in example can use reduce()
object.keys()
var data = {"test1":{"documents":[]},"test2":{"documents":[{"vid":"sdfas23","typeid":"81","isdeleted":false}],"answer":true},"test3":{"documents":[{"vid":"h1mjinyi","typeid":"82","isdeleted":false}],"answer":true}} var result = object.keys(data).reduce(function(a, e) { if (data[e].documents[0]) a.push(data[e].documents[0].typeid); return a; }, []) console.log(result)
for multiple objects in documents
array can add foreach
loop previous code (there 2 objects in test3.documents
)
var data = {"test1":{"documents":[]},"test2":{"documents":[{"vid":"sdfas23","typeid":"81","isdeleted":false}],"answer":true},"test3":{"documents":[{"vid":"h1mjinyi","typeid":"82","isdeleted":false},{"vid":"random","typeid":"100","isdeleted":false}],"answer":true}} var result = object.keys(data).reduce(function(a, e) { if (data[e].documents.length) data[e].documents.foreach(function(p) { a.push(p.typeid); }); return a; }, []) console.log(result);
Comments
Post a Comment