请问小程序中如何遍历多层嵌套的json数组呢

像这种文件库目录的,不知道每层有多少层子层,如何遍历目录,然后把该目录显示出来呢

img

已知的是下面这样的json数组呢

img

我想把这样的目录以文件名为节点在小程序中显示出来,这json数组层层嵌套,不会遍历呢

需要用到递归呢

function tree (result) {
    for (var i = 0; i < result.length; i++) {
        var item = result[i];
        console.log(item.contentName)
       if(item.children && item.children.length){
            tree(item.children)
        }
    } 
}

你得看看有多少层,然后一级一级的遍历,给你参考一个
微信小程序 列表渲染多层嵌套循环_yechaoa-CSDN博客_微信小程序嵌套循环 前言入门教程之列表渲染多层嵌套循环,目前官方的文档里,主要是一维数组列表渲染的案例,还是比较简单单一,给刚入门的童鞋还是无从入手的感觉。&lt;view wx:for="{{items}}"&gt; {{index}}: {{item.message}}&lt;/view&gt;还有一个九九乘法表把数据直接写到wxml里的,并不是动态二维数组的列表渲染。&lt;vie... https://blog.csdn.net/yechaoa/article/details/81537489

楼上,只是 用 tree 这个 函数 把数组 遍历 了一遍,跟楼主 想 显示出来,没啥关系。
如果想 显示 在 小程序中,建议你用组件试试,如果组件 检测到 又children 的存在,就emit 告诉 父组件一下,父组件通过emit的 这个方法,改变一下页面,让页面再去 调用 子组件。具体实现起来,可能有点绕,但是不难的。

首先写2个方法,一个解析目录,一个解析节点的。一个主方法,主方法判断json的下一层级是目录还是节点,调用对应的方法,获得的结果递归主方法判断下一层级。。。知道没有值。思路就是这样。然后如果前端用的不是纯jquery,其实可以不用解析的在赋值,看你前端用的哪个框架,搜官网的树结构组件,都封装好了,把后端传过来的data值给树结构组件就显示出来了。vue的树结构id相当于key,label是显示给用户看的值(即把文件名的值给它),有children则是目录,没有则是节点。其他的框架对树结构的封装也有的(基本一致),不需要我们重新造轮子了