You’ll have to split the string by the period, and then access each node iteratively. This could be done in a simple reduce
:
var value = str.split('.').reduce(function(p,prop) { return p[prop] }, person);
The above would work regardless if str
contains a period or not, i.e. for name
as well as contact.phone
.