js的对象数组中有日期属性,怎么拿到日期的最小值、最大值

115 阅读1分钟

在JavaScript中,如果你有一个对象数组,并且每个对象都包含一个日期属性,你可以使用Array.prototype.reduce()方法结合Date对象来获取日期属性的最小值和最大值。以下是一个示例:

假设你的对象数组如下:

const data = [  
  { id: 1, date: new Date('2023-01-01') },  
  { id: 2, date: new Date('2023-01-10') },  
  { id: 3, date: new Date('2023-01-05') }
];

// 获取日期最小值  
const minDate = data.reduce((acc, curr) => {  
  return acc === null || curr.date < acc ? curr.date : acc;  
}, null);  
  
// 获取日期最大值  
const maxDate = data.reduce((acc, curr) => {  
  return acc === null || curr.date > acc ? curr.date : acc;  
}, null);  
  
console.log('最小日期:', minDate);  
console.log('最大日期:', maxDate);

image.png