javascript - 如何遍历对象的嵌套子对象并收集名称数组

标签 javascript oop currying

一个对象中有n个父子

var obj={
    name:'one',
    child:{
        name:'two',
        child:{
            name:'three',
            child..
        }
    }
} 

foo(obj)                        

编写一个函数以获取输出为 ['one', 'two, 'three', ...]

最佳答案

你应该使用递归函数

var result = [];

function searchChildren(parent){
    if(parent.child){
        result.push(parent.name);
        searchChildren(parent.child);
    }
}

searchChildren(obj);

https://jsfiddle.net/zrbfm9ud/

关于javascript - 如何遍历对象的嵌套子对象并收集名称数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42866678/

相关文章:

java - 泛型类的概念问题

oop - DART中类字段的默认值

haskell - 这些用柯里化(Currying)和转换器实现的函数有什么区别?

javascript - 无法在 JavaScript 中删除数组

javascript - 如何将两个 jquery 对象一起制作动画

javascript - 什么时候应该使用一个事件监听器,什么时候应该使用多个?

Java:OOP 建议和改进小型应用程序的建议

javascript - Node 柯里化(Currying)函数,并为其分配了惰性值

javascript - 将动态参数添加到函数,该函数的参数作为参数传递给当前函数

javascript - Jquery UI 可拖动 : Align helper to mouse position