gpt4 book ai didi

javascript - 如何使用 Angular 中的lodash按年份过滤rowData

转载 作者:行者123 更新时间:2023-12-02 22:30:45 24 4
gpt4 key购买 nike

如何按年份过滤 rowData,例如 2019。然后它显示数据有2019这是代码:

list.component.ts

rowData = [
{
'machineCode': 'PEWDIEPIE001',
'assetCode': 'LOCAL1',
'date': '2019-03-02 09:02:00'
},
{
'machineCode': 'PEWDIEPIE002',
'assetCode': 'LOCAL1',
'date': '2019-09-02 09:02:00'
},
{
'machineCode': 'PEWDIEPIE001',
'assetCode': 'LOCAL1',
'date': '2019-10-02 09:02:00'
},
{
'machineCode': 'PEWDIEPIE001',
'assetCode': 'LOCAL1',
'date': '2012-10-02 09:02:00'
},
{
'machineCode': 'PEWDIEPIE003',
'assetCode': 'LOCAL2',
'date': '2012-10-02 09:02:00'
}
];

const orderedByMonth = _.groupBy(this.rowData, function (item: any) {
return item.date.substring(0, 7);
});
const groupedByYear = _.groupBy(orderedByMonth, function (item: any) {
return item[0].date.substring(0, 4);
});

enter image description here提前致谢

最佳答案

lodash 中有一个名为 pickBy 的方法

var filteredByYear = _.pickBy(groupedByYear, function(value, key) {
return key != '2019';
});

因为groupBy返回一个对象。此方法 pickBy 基于键值处理对象,并将从您在屏幕截图中提供的 object 中过滤出 2019

更新

另一种方法是filter ,它只会返回过滤后的键的值。

var filteredByYear = _.filter(groupedByYear, function(value, key) {
return key != '2019';
});

关于javascript - 如何使用 Angular 中的lodash按年份过滤rowData,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58910596/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com