【发布时间】:2017-04-21 10:51:07
【问题描述】:
我有以下形式的数据。我正在逐行使用 loadash 进行 groupby 。然而 loadash groupby 正在返回基于行值的组,我希望它应该忽略行和组之间 1 值的微小差异。前任。它应该在一组中添加第 9 行和第 10 行的项目。我应该从 groupby 回调函数返回什么,它将通过包含相邻值对属性进行分组。
[
{
"row": 9,
"city": "Camas"
},
{
"row": 9,
"city": "Kersey"
},
{
"row": 6,
"city": "Ebro"
},
{
"row": 10,
"city": "Orick"
},
{
"row": 2,
"city": "Bonanza"
},
{
"row": 6,
"city": "Rowe"
},
{
"row": 5,
"city": "Walland"
}
]
预期输出
{
2: [
{
"row": 2,
"city": "Bonanza"
},
],
5: [
{
"row": 6,
"city": "Ebro"
},
{
"row": 6,
"city": "Rowe"
},
{
"row": 5,
"city": "Walland"
}
],
9: [{
"row": 9,
"city": "Camas"
},
{
"row": 9,
"city": "Kersey"
},
{
"row": 10,
"city": "Orick"
}
]
}
【问题讨论】:
-
lodash#groupBy 返回一个对象,其中键表示您提供的集合的键或您从提供的迭代对象生成的自定义键的唯一值。根据您的说明,我没有看到将它们按特定标准(键)分组的方法,您能提供预期的输出吗?
-
@ryeballar,我更新了问题,还添加了预期的输出。返回对象中的键并不重要,任何东西都可以接受。
-
如果我们添加一行:7 和一行:8 会发生什么?
-
@ryeballar,不会有这种情况,最多有2分误差(差异)。
标签: lodash