JSFiddle - React, Tailwind, and code Playground

JavaScript

function getProperty(obj, prop) {
        var parts = prop.split('.'),
            last = parts.pop(),
            l = parts.length,
            i = 1,
            current = parts[0];
            
        while((obj = obj[current]) && i < l) {
            current = parts[i];
            i++;
        }

        if(obj) {
            return obj[last];
        }
    }


var someObject = {  
    "foo":{  
        "bar":{  
            "baz":[  
                {  
                    "foo bar":"baz",
                    "baz foo":"bar",
                    "bazfoo":"bar"
                }
            ]
        }
    }
};
var test1 = "foo.bar.baz[0]['bazfoo']";

var test2 = "foo.bar.baz[0]['foo bar']";

//My required result from test1 is 'bar'
alert(test1 + ' is ' + getProperty(someObject, test1));


//My required result from test2 is 'baz'
alert(test2 + ' is ' + getProperty(someObject, test2));