如何使用jQuery遍历嵌套数组

用户名

这就是我要访问数组中第一项的方式,因此,类别数组中有一个子类别数组。

    console.log(data.Body.Categories[0].CategoryName);
    console.log(data.Body.Categories[0].SubCategories[0].CategoryName);

我正在尝试做这样的事情,但它仍然只显示父类别,而不显示子类别。

    jQuery.each(data.Body.Categories, function(index, value) {
        console.log(value.CategoryName);
        jQuery.each(data.Body.Categories.SubCategories, function(key, val) {
            console.log(val.CategoryName);
        });
    });
宫殿

您可以简单地通过在第二个循环中替换以下代码来做到这一点:

data.Body.Categories.SubCategories

有了这个:

value.SubCategories

因为value这里表示Categories数组中的每个对象

因此,完整的代码将类似于:

jQuery.each(data.Body.Categories, function(index, value) {
    console.log('CategoryName: ', value.CategoryName);
    jQuery.each(value.SubCategories, function(key, val) {
        console.log('Sub-CategoryName: ', val.CategoryName);
    });
});

演示:

const Categories = [
  {
    CategoryName: 'A',
    SubCategories: [
      {CategoryName: 'A1'}, {CategoryName: 'A2'}
    ]
  },
  {
    CategoryName: 'B',
    SubCategories: [
      {CategoryName: 'B1'}, {CategoryName: 'B2'}
    ]
  }
]


jQuery.each(Categories, function(index, value) {
  console.log('CategoryName: ', value.CategoryName);
  jQuery.each(value.SubCategories, function(key, val) {
    console.log('Sub-CategoryName: ', val.CategoryName);
  });
});
.as-console-wrapper { max-height: 100% !important; top: 0; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章