Hey Jared,
This exercise will leave you breathless. I had a read over the code and i have to say the way you tried to tackle it is novel. I think your problem is with your for-loops.
Iterating over nested objects is like itterating over nested arrays, the pattern goes
let obj = {Property : Value,
nestedProperty:{
subProperty : value
}
}
//Outer Loop-Parent Level
for(let p(arent) = 0 ; p < obj.length ; p++){
anything you want to do to the parent you do here:
//Child Loop
for(let c = 0; c < obj.nestedProperty.length < c++){
//Any logic you want to prefrom on the child
Take a look at mine, I hope it might help…
Js Fiddle
Keep up the good work man,