Skip to content
html
<body>
    <div id="one"></div>
</body>
<script>
    var o = [
        {
            value: '1',
            children: [
                {
                    value: '1.1'
                }, {
                    value: '1.2'
                }
            ]
        },
        {
            value: '2',
            children: [
                {
                    value: '2.1'
                },
                {
                    value: '2.2',
                    children: [
                        {
                            value: '2.2.1'
                        }
                    ]
                }
            ]
        },
    ]
    var loop = (o) => {
        return o.map(e => {
            return e.children ?
                `<div>
                    <div>${e.value}</div>
                    <div style="padding-left: 20px">${loop(e.children)}</div>
                   </div>
                `
                : e.value
        })
    }
    var html = loop(o).join('')

    var one = document.getElementById("one");
    one.innerHTML = html
</script>
<body>
    <div id="one"></div>
</body>
<script>
    var o = [
        {
            value: '1',
            children: [
                {
                    value: '1.1'
                }, {
                    value: '1.2'
                }
            ]
        },
        {
            value: '2',
            children: [
                {
                    value: '2.1'
                },
                {
                    value: '2.2',
                    children: [
                        {
                            value: '2.2.1'
                        }
                    ]
                }
            ]
        },
    ]
    var loop = (o) => {
        return o.map(e => {
            return e.children ?
                `<div>
                    <div>${e.value}</div>
                    <div style="padding-left: 20px">${loop(e.children)}</div>
                   </div>
                `
                : e.value
        })
    }
    var html = loop(o).join('')

    var one = document.getElementById("one");
    one.innerHTML = html
</script>