首页 > 解决方案 > 有没有办法循环对象数组的数组?

问题描述

这就是我的解决方案的样子:

在此处输入图像描述

现在我有一个数组,我将它们全部按第一个字母分组,就像这样

const grouped = _.groupBy(topicPages, key => key.relatedTopic.title[0]);

这是结果:

在此处输入图像描述

在此处输入图像描述

所以我试图找出一种方法来显示带有该数组中标题的字母 A。

我尝试过使用某种地图:

grouped.map(first, key) => {
  // here I want to display the key

 // and then continue looping over 
  first.map(title => {
    title.relatedTopic.title
  })
})

标签: javascriptreactjs

解决方案


我得到:TypeError:grouped.map 不是函数

grouped是一个没有map功能的对象。

const input = ["All","Andre","Ben","Boy"];

const grouped = _.groupBy(input, item => item[0]);

console.log(grouped)
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js"></script>

为了循环它,你可能想要entries

const input = ["All","Andre","Ben","Boy"];

const grouped = _.groupBy(input, item => item[0]);

_.forEach(_.entries(grouped), ([key,values]) => {
    console.log(key);
    values.forEach(value => {
       console.log("\t" + value);
    })
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js"></script>


推荐阅读