Object.byStringFor = function(object, string) {
string = string.replace(/\[(\w+)]/g, '.$1');
string = string.replace(/^\./, '');
const array = string.split('.');
for (let index = 0, limit = array.length; index < limit; ++index) {
const key = array[index];
if (key in object) {
object = object[key];
} else {
return;
}
}
return object;
}
Object.byStringForeach = function(object, string) {
string = string.replace(/\[(\w+)]/g, '.$1');
string = string.replace(/^\./, '');
const array = string.split('.');
array.forEach((key) => {
if (key in object) object = object[key];
});
return object;
}
const object = {
a: {
b: {
c: 1
}
}
};