var queryObject = function(obj, qry) {
let curObj = obj;
let result = [];
let parts = qry.split('.');
parts.forEach(function(part, i) {
if (part in curObj) {
if (i === parts.length - 1) {
let resultObj = curObj[part];
let type = resultObj.constructor.name;
if (type == 'Array') {
result = [];
} else if (type == 'Object') {
result = {};
}
let keys = Object.keys(resultObj);
for (let prop in keys) {
if (type == 'Array') {
result[prop] = resultObj[prop];
} else if (type == 'Object') {
let propName = keys[prop];
result[propName] = resultObj[propName];
}
}
} else {
curObj = curObj[part];
}
} else {
return false;
}
});
if (!Array.isArray(result)) {
return [result];
}
return result;
};
139800cookie-checkJavascript QueryObject