Instantly share code, notes, and snippets.

Embed
What would you like to do?
function containsInNestedObjectBF(obj, val) {
const queue = [obj];
while (queue.length > 0) {
const currentObj = queue.shift();
if (currentObj === val) {
return true;
}
const keys = currentObj instanceof Object ? Object.keys(currentObj) : [];
for (const key of keys) {
const objVal = currentObj[key];
stack.push(objVal);
}
}
return false;
}
var nestedObject = {
data: {
info: {
stuff: {
thing: {
moreStuff: {
something: 'foo2',
someVal: 40
}
}
}
}
}
}
let hasIt = containsInNestedObject(nestedObject, 40); // true
let doesntHaveIt = containsInNestedObject(nestedObject, "foo"); // false
console.log(hasIt, doesntHaveIt);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment