I would like to receive every user id that got the object {"cool": true}
. So in this case these would be 681980629554137898 and 953522081637941260.
My JSON file:
{"681980629554137898": [{"id": "681980629554137898"}, {"cool": true}],
"790606386957778984": [{"id": "790606386957778984"}, {"cool": false}],
"953522081637941260": [{"id": "953522081637941260"}, {"cool": true}]
}
CodePudding user response:
You can filter out the properties whose value does not include an object whose cool
property is true.
const obj={"681980629554137898":[{id:"681980629554137898"},{cool:true}],"790606386957778984":[{id:"790606386957778984"},{cool:false}],"953522081637941260":[{id:"953522081637941260"},{cool:true}]};
const res = Object.keys(obj).filter(e => obj[e].some(f => f.cool))
console.log(res)