递归-0522

128 阅读1分钟

1.递归运用排列

<script>
    let arr = [
        {
            name: 'a',
            children: [
                {
                    name: 'a-1',
                    children: [
                        {
                            name: 'a-1-1'
                        },
                        {
                            name:'a-1-2'
                        }
                    ]
                },
                {
                    name:'a-2'
                }
            ]
        },
        {
            name: 'b',
            children: [
                {
                    name: 'b-1'
                },
                {
                    name:'b-2'
                }
            ]
        },
        {
            name:'c'
        }
    ]

    function createMenu(data, con) {
        let ul = $('<ul/>')
        data.forEach(item => {
            let li = $('<li/>').text(item.name)
            if (item.children)
                createMenu(item.children, li)
            ul.append(li)
        })
        con.append(ul)
    }
    createMenu(arr,$('.container'))
</script>

2.递归求合

    function as(i) {
        if (i == 1) return i
        return i + as(i - 1)
    }
    console.log(as(10));