<< Back to main
Javascript Object Recursive Deep Search
const search = (obj, key) => {
if (key in obj) return obj[key];
for (var deepKey in obj) {
if (typeof obj[deepKey] === "object") {
let result = search(obj[deepKey], key);
if (result !== null) return result;
}
}
return null;
};
Usage
const obj = {
a: { b: 1 },
c: 2,
d: { e: { f: 3 } },
};
console.log(search(obj, "a"));
console.log(search(obj, "b"));
console.log(search(obj, "c"));
console.log(search(obj, "d"));
console.log(search(obj, "e"));
console.log(search(obj, "f"));
console.log(search(obj, "g"));