Так что я не супер опытный с рекурсивными функциями, но в идеале эта функция будет искать объект произвольной глубины для конкретного ребенка и возвращать его, но по какой-то причине, когда я return r;
, я получаю r = undefined
.Рекурсивный поиск
function search(_for, _in) {
var r;
for (var p in _in) {
// is a match
if (p == _for) {
console.log("MATCH");
r = _in[_for];
break;
}
// if not a match but has children
if (p != _for && nodeCount(_in[p]) > 0 && r == false) {
console.log("RECURSE INTO " + p);
r = search(_for, _in[p]);
}
}
return r;
}
Спасибо.
Это делает так много смысла! –