best way to find object

Viewed 29

I need to find object by property children_inherit where value is true and return this object. what is the best way to do this, maybe it possible to do this with lodash library or better with clean js?

please check object below...

{ 

    "file": [ 

        { 

            "children_inherit": false, 

             "value": "123123"

        }, 

        { 

            "children_inherit": false, 

            "value": "asdad" 

        } 

    ], 

    "sample": [ 

        { 

            "children_inherit": true, 

            "value": "1231" 

        } 

    ], 

    "treatment": [ 

        { 

            "children_inherit": false, 

            "value": "asdasd"

        } 

    ] 

} 

1 Answers

Object.values is returning the values of the object (i.e: "file" value, "sample" value etc..). In the first for loop, you access those values and then in the second for loop, you can access the each object inside the arrays and voila:

const obj = { 
    "file": [ 
        { 
            "children_inherit": false, 
             'value': 123123 
        }, 
        { 
            "children_inherit": false, 
             'value': 'asdad' 
        } 
    ], 
    "sample": [ 
        { 
            "children_inherit": true, 
             'value': '1231' 
        } 
    ], 
    "treatment": [ 
        { 
            "children_inherit": false, 
             "value": 'yoyoyo' 
        } 
    ] 
}

let value

for(const v of Object.values(obj)) {  
    for(let k of v) {
      if(k.children_inherit) value = k.value
    } 
}

console.log(value)
Related