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

如何将jQuery日期选择器输出的常规日期格式转为YYYY-MM-DD?

别着急,我来帮你搞定这个日期格式转换的问题!其实有两种思路,一种是从根源上让jQuery日期选择器直接输出你要的格式,另一种是把已经拿到的日期字符串转换成目标格式,两种方法我都给你详细说说:

方法一:直接让jQuery Datepicker输出目标格式

这是最省心的做法,不用后期再处理字符串。

  • 如果是英语环境的日期选择器,初始化时直接指定dateFormat参数即可:
$( "#datepicker" ).datepicker({
  dateFormat: "yy-mm-dd" // 直接输出YYYY-MM-DD格式,比如2018-06-06
  // 要是想要DD-MM-YYYY格式,改成"dd-mm-yy"就行
});
  • 如果是西班牙语的日期选择器(输出junio这类月份名),你可以先配置西班牙语本地化信息,再指定格式:
// 手动配置西班牙语月份(没引入官方本地化文件时用这个)
$.datepicker.regional['es'] = {
  monthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],
  monthNamesShort: ['Ene','Feb','Mar','Abr','May','Jun','Jul','Ago','Sep','Oct','Nov','Dic'],
};
$.datepicker.setDefaults($.datepicker.regional['es']);

// 初始化日期选择器并指定输出格式
$( "#datepicker" ).datepicker({
  dateFormat: "dd-mm-yy" // 输出DD-MM-YYYY格式,比如06-06-2018
});

这样选择器就会直接输出你想要的格式,不用再做额外转换啦。

方法二:转换已有的日期字符串(比如"junio 6, 2018"或"june 6, 2018")

如果已经拿到了这种带月份名称的字符串,我们可以手动解析转换。核心是先建立月份名称到数字的映射,再拆分字符串提取各部分,最后拼接成目标格式:

function convertDateString(dateStr) {
  // 建立英语+西班牙语月份到两位数字的映射
  const monthMap = {
    // 英语月份
    january: '01', february: '02', march: '03', april: '04', may: '05', june: '06',
    july: '07', august: '08', september: '09', october: '10', november: '11', december: '12',
    // 西班牙语月份
    enero: '01', febrero: '02', marzo: '03', abril: '04', mayo: '05', junio: '06',
    julio: '07', agosto: '08', septiembre: '09', octubre: '10', noviembre: '11', diciembre: '12'
  };

  // 拆分日期字符串,处理大小写和多余符号
  const parts = dateStr.toLowerCase().split(' ');
  const month = monthMap[parts[0]];
  const day = parts[1].replace(',', '').padStart(2, '0'); // 给个位数日期补前导零
  const year = parts[2];

  // 返回你需要的格式,按需调整顺序即可
  return `${year}-${month}-${day}`; // YYYY-MM-DD格式
  // 要是要DD-MM-YYYY,改成`${day}-${month}-${year}`
}

// 测试示例
console.log(convertDateString("junio 6, 2018")); // 输出2018-06-06
console.log(convertDateString("june 6, 2018")); // 输出2018-06-06

这个函数能同时处理两种语言的月份名称,还会自动补全日期的前导零,保证格式统一。

内容的提问来源于stack exchange,提问作者Alex Garret jones

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 04:27:53