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

JS日期格式转换:是否存在更简便的实现方式?

JavaScript日期格式转换优化方案

你当前的实现重复创建了3次Date对象,这完全是冗余操作——只需要创建一次Date实例,就能从中提取所有需要的日期信息。

优化方案1:复用单个Date对象

const dateStr = "2021-08-19";
const date = new Date(dateStr);
const day = date.getDate();
const month = date.toLocaleString("en-US", { month: "short" });
const year = date.getFullYear();

console.log(`${day} ${month} ${year}`); // 输出 "19 Aug 2021"

优化方案2:一步到位的格式化

直接利用toLocaleDateString的参数配置,一次性生成目标格式,代码更简洁:

const dateStr = "2021-08-19";
const formattedDate = new Date(dateStr).toLocaleDateString("en-US", {
  day: "numeric",
  month: "short",
  year: "numeric"
});

console.log(formattedDate); // 输出 "19 Aug 2021"

如果需要处理大量日期转换,复用Date实例能避免不必要的对象创建开销;如果只是单次转换,第二种方法的代码量更少,可读性也更强。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 15:15:46