js array每个item都有date字符串如何按照年进行分组
你可以使用reduce函数来按照年份对数组进行分组。首先,你需要将每个日期字符串转换为Date对象,然后提取出年份作为分组的依据。下面是一个示例代码:
const array = [
{ date: '2021-01-01', value: 'item 1' },
{ date: '2020-12-31', value: 'item 2' },
{ date: '2021-02-15', value: 'item 3' },
{ date: '2020-11-10', value: 'item 4' }
];
const groupedArray = array.reduce((result, item) => {
const year = new Date(item.date).getFullYear();
if (!result[year]) {
result[year] = [];
}
result[year].push(item);
return result;
}, {});
console.log(groupedArray);
输出结果为:
{
2021: [
{ date: '2021-01-01', value: 'item 1' },
{ date: '2021-02-15', value: 'item 3' }
],
2020: [
{ date: '2020-12-31', value: 'item 2' },
{ date: '2020-11-10', value: 'item 4' }
]
}
这样,数组中的每个元素就按照年份分组了
原文地址: http://www.cveoy.top/t/topic/i0ws 著作权归作者所有。请勿转载和采集!