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

编写函数实现日期格式转换:从DD/MM/YYYY转为Month DD, YYYY(用数组转月份名)

日期格式转换:DD/MM/YYYY 转 Month DD, YYYY

这里提供一个JavaScript实现的函数,用数组映射数字月份到英文名称,完成格式转换:

function convertDateFormat(dateStr) {
  // 索引0占位,让1-12直接对应数组的1-12位
  const monthNames = [
    '', 'January', 'February', 'March', 'April', 'May', 'June',
    'July', 'August', 'September', 'October', 'November', 'December'
  ];
  
  // 拆分日期字符串为日、月、年
  const [day, month, year] = dateStr.split('/');
  
  // 转换月份数字为英文名称
  const targetMonth = monthNames[parseInt(month, 10)];
  
  // 拼接成目标格式
  return `${targetMonth} ${day}, ${year}`;
}

// 测试示例
console.log(convertDateFormat('31/03/2022')); // 输出: March 31, 2022

实现说明

  • 月份数组设计:把数组第0位留空,这样输入的1-12月数字可以直接作为索引取对应名称,不用额外做-1的偏移处理,逻辑更直观;
  • 字符串拆分:用split('/')按斜杠分割输入字符串,解构出日、月、年三个部分;
  • 格式拼接:按Month DD, YYYY的结构组合各部分,返回最终结果。

可选优化(非必需)

如果需要处理格式不合法的输入,可以添加校验逻辑,比如:

function convertDateFormat(dateStr) {
  const monthNames = [
    '', 'January', 'February', 'March', 'April', 'May', 'June',
    'July', 'August', 'September', 'October', 'November', 'December'
  ];
  
  const parts = dateStr.split('/');
  if (parts.length !== 3) {
    return '输入格式错误,请使用DD/MM/YYYY格式';
  }
  
  const [day, month, year] = parts;
  const monthNum = parseInt(month, 10);
  if (monthNum < 1 || monthNum > 12) {
    return '月份无效,请输入1-12之间的数字';
  }
  
  const targetMonth = monthNames[monthNum];
  return `${targetMonth} ${day}, ${year}`;
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 16:05:48