Lets say I have the following object
var ob = [
{
"id": 1,
"comment": "some comment",
"hidden": 0,
},
{
"id": 2,
"comment": "some comment",
"hidden": 1,
},
{
"id": 3,
"comment": "some comment",
"hidden": 1,
},
{
"id": 4,
"comment": "some comment",
"hidden": 0,
}
]
How can I filter this to say for example return all where hidden = 1
Cheers
Use Array#filter:
let arr = [
{
"id": 1,
"comment": "some comment",
"hidden": 0,
},
{
"id": 2,
"comment": "some comment",
"hidden": 1,
},
{
"id": 3,
"comment": "some comment",
"hidden": 1,
},
{
"id": 4,
"comment": "some comment",
"hidden": 0,
}
];
let res = arr.filter(x => x.hidden === 1);
// or arr.filter(({hidden}) => hidden === 1);
console.log(res);
var ob = [
{
"id": 1,
"comment": "some comment",
"hidden": 0,
},
{
"id": 2,
"comment": "some comment",
"hidden": 1,
},
{
"id": 3,
"comment": "some comment",
"hidden": 1,
},
{
"id": 4,
"comment": "some comment",
"hidden": 0,
},
{
"id": 5,
"comment": "some comment",
"hidden": 2,
}
]
let result = ob.filter(x => x.hidden === 1);
console.log("result for hidden properties 1",result)
//Or you can use other condision. Just think like conditional operator but this is kind of different thing
let result2 = ob.filter(x => x.hidden === 2);
console.log("result for hidden properties 2",result2)
//This condition only pass when hidden properties values 2. otherwise It won't filter and won't give your expected output , or result whatever you say.