You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在JavaScript中从日期数组获取最新日期?

解决方案

原生JavaScript实现

无需依赖任何第三方库,手动解析日期格式并完成比较、格式化即可:

function getLatestDate(dates) {
  // 把DD/MM/YYYY格式的字符串转为Date对象
  const parseDate = (dateStr) => {
    const [day, month, year] = dateStr.split('/').map(Number);
    // 注意JS的Date月份是0索引,需要减1
    return new Date(year, month - 1, day);
  };

  // 遍历找出最新的日期对象和原字符串
  let latestDateObj = parseDate(dates[0]);
  
  dates.forEach(dateStr => {
    const currentDate = parseDate(dateStr);
    if (currentDate > latestDateObj) {
      latestDateObj = currentDate;
    }
  });

  // 格式化为补零的DD/MM/YYYY格式
  const formatDate = (dateObj) => {
    const day = String(dateObj.getDate()).padStart(2, '0');
    const month = String(dateObj.getMonth() + 1).padStart(2, '0');
    const year = dateObj.getFullYear();
    return `${day}/${month}/${year}`;
  };

  return formatDate(latestDateObj);
}

const dates = ["22/1/2022","22/7/2022","9/10/2018"];
console.log(getLatestDate(dates)); // 输出 "22/07/2022"

使用date-fns实现

date-fns提供了开箱即用的日期解析、比较和格式化方法,代码更简洁:

先安装依赖:

npm install date-fns

实现代码:

import { parse, format, max } from 'date-fns';

function getLatestDate(dates) {
  // 按DD/MM/YYYY格式解析所有日期为Date对象
  const dateObjects = dates.map(dateStr => parse(dateStr, 'dd/MM/yyyy', new Date()));
  // 获取最新的日期对象
  const latestDateObj = max(dateObjects);
  // 格式化为补零的目标格式
  return format(latestDateObj, 'dd/MM/yyyy');
}

const dates = ["22/1/2022","22/7/2022","9/10/2018"];
console.log(getLatestDate(dates)); // 输出 "22/07/2022"

使用Moment.js实现

Moment.js对自定义日期格式的处理同样便捷:

先安装依赖:

npm install moment

实现代码:

import moment from 'moment';

function getLatestDate(dates) {
  // 按DD/MM/YYYY格式解析所有日期
  const momentDates = dates.map(dateStr => moment(dateStr, 'DD/MM/YYYY'));
  // 获取最新的日期实例
  const latestMoment = moment.max(momentDates);
  // 格式化为补零的目标格式
  return latestMoment.format('DD/MM/YYYY');
}

const dates = ["22/1/2022","22/7/2022","9/10/2018"];
console.log(getLatestDate(dates)); // 输出 "22/07/2022"

内容的提问来源于stack exchange,提问作者SDK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 09:01:07