你可以使用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' }
  ]
}

这样,数组中的每个元素就按照年份分组了

js array每个item都有date字符串如何按照年进行分组

原文地址: http://www.cveoy.top/t/topic/i0ws 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录