遍历多级菜单

253 阅读1分钟
遍历多级菜单可以使用递归函数来实现,以下是一个示例代码:

```javascript
function traverseMenu(menuList) {
  for (let i = 0; i < menuList.length; i++) {
    const menu = menuList[i];
    console.log(menu.name); // 输出菜单名称
    if (menu.children) {
      traverseMenu(menu.children); // 递归遍历子菜单
    }
  }
}

// 示例数据
const menus = [  {    name: '菜单1',    children: [      {        name: '子菜单1-1'      },      {        name: '子菜单1-2',        children: [          {            name: '子菜单1-2-1'          },          {            name: '子菜单1-2-2'          }        ]
      }
    ]
  },
  {
    name: '菜单2'
  }
];

// 调用遍历函数
traverseMenu(menus);
```

上述代码中,`traverseMenu` 函数接收一个菜单数组作为参数,遍历数组中的每一个菜单对象,并输出菜单名称。如果菜单对象中存在 `children` 属性,就递归调用 `traverseMenu` 函数遍历子菜单。最后,我们可以调用 `traverseMenu` 函数并传入菜单数组来遍历整个多级菜单。