js判断多个日期距离今天哪个最近
时间: 2023-07-31 14:08:55 浏览: 206
可以先将这些日期转换成时间戳,然后与当前时间戳比较大小,找到距离当前时间最近的日期。
代码示例:
```javascript
function findNearestDate(dates) {
const now = new Date().getTime();
let nearestDate = dates[0];
let minDiff = Math.abs(nearestDate.getTime() - now);
for (let i = 1; i < dates.length; i++) {
const diff = Math.abs(dates[i].getTime() - now);
if (diff < minDiff) {
minDiff = diff;
nearestDate = dates[i];
}
}
return nearestDate;
}
// 测试
const dates = [
new Date('2022-01-01'),
new Date('2022-02-01'),
new Date('2022-03-01'),
];
console.log(findNearestDate(dates)); // 输出:2022-01-01T00:00:00.000Z
```
在这个示例中,`findNearestDate` 函数接收一个日期数组,首先获取当前时间戳 `now`,然后遍历日期数组,计算每个日期与当前时间戳的差值 `diff`,如果 `diff` 比当前最小值 `minDiff` 小,就更新 `minDiff` 和 `nearestDate`。最后返回 `nearestDate` 即可。
阅读全文