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

如何在JavaScript函数中将日期格式化为2020JAN30格式?

解决JavaScript日期格式化问题:输出2020JAN30格式

我来帮你搞定这个日期格式化的需求!你之前的尝试里,直接返回Date对象会得到浏览器默认的冗长日期字符串,而用new Date('YYYYMDD')完全行不通——因为JavaScript的Date构造函数根本不认识这种自定义格式,所以才会触发错误。

下面是实现你想要的2020JAN30格式的完整函数:

function formatDate() {
  const d = new Date();
  // 获取4位完整年份
  const year = d.getFullYear();
  // 定义月份缩写数组,对应0-11的月份索引(JS中一月是0)
  const monthAbbrs = ['JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEC'];
  // 匹配对应月份的大写缩写
  const month = monthAbbrs[d.getMonth()];
  // 获取日期,不足两位自动补0(比如1号转为01)
  const day = String(d.getDate()).padStart(2, '0');
  // 拼接成目标格式返回
  return `VZW Dfill - ${year}${month}${day}`;
}

关键代码说明:

  • d.getFullYear():返回4位数字的年份(比如2020),比老旧的getYear()更可靠,不会出现年份偏移问题。
  • monthAbbrs数组:因为d.getMonth()返回0(一月)到11(十二月)的数字,用数组索引直接匹配对应的大写月份缩写,完美契合需求。
  • String(d.getDate()).padStart(2, '0'):把日期转为字符串后,用padStart方法确保日期始终是两位格式,和你示例里的30保持统一。

测试这个函数时,当系统日期是2020年1月30日,会精准返回你想要的结果:VZW Dfill - 2020JAN30。

如果后续需要处理指定日期而非当前日期,只需要把new Date()替换成目标日期对象(比如new Date('2020-01-30'))即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 12:04:07