【发布时间】:2021-02-19 12:31:25
【问题描述】:
我有以下数据数组:
const data = [
{ year: 1900, title: 'test 1' },
{ year: 2000, title: 'test 2' },
{ year: 2000, title: 'test 3' },
{ year: 2000, title: 'test 4' },
];
我的目标是获得一个年份数组,其中每个给定年份出现两次以上:
[2000]
countBy 很容易通过以下方式实现:
_.chain(data)
.countBy('year')
.value()
返回以下对象:
{'1900': 1, '2000': 3}
我偶然发现了过滤部分。我尝试了以下方法,但它返回了一个空数组:
_.chain(data)
.countBy('year')
.filter((o) => {
o > 2;
})
.value();
正确的方法是什么?
【问题讨论】:
-
我删除了我的答案。但是作为注释,当前代码中的一个问题是过滤谓词缺少返回,因此它总是返回“未定义”,因此列表为空。
标签: javascript arrays lodash