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

如何不导入库将毫秒数转换为日期时间?附date.js实现示例

不依赖外部库实现毫秒数转指定格式日期时间

没问题!我们可以直接借助JavaScript原生的Date对象来完成这个转换,完全不需要依赖date.js这类第三方库。原生Date提供了一系列获取日期时间各个部分的方法,我们只需要把这些部分按你想要的格式拼接起来就行,还要注意处理补零的问题(比如1月要显示为01,7分钟要显示为07)。

实现步骤与代码

首先,我们需要一个简单的辅助函数来处理数字补零——当数字小于10时,在前面添加一个0:

function padZero(num) {
  return num < 10 ? `0${num}` : num;
}

然后,编写核心的转换函数,利用原生Date的方法获取年、月、日、时、分、秒,并按格式拼接:

function convertDate(mili) {
  const date = new Date(mili);
  // 获取四位年份
  const year = date.getFullYear();
  // 月份从0开始,需加1后补零
  const month = padZero(date.getMonth() + 1);
  // 获取日期并补零
  const day = padZero(date.getDate());
  // 获取小时并补零
  const hours = padZero(date.getHours());
  // 获取分钟并补零
  const minutes = padZero(date.getMinutes());
  // 获取秒数并补零
  const seconds = padZero(date.getSeconds());
  
  // 按目标格式拼接结果
  return `${year}-${month}-${day} ( ${hours}:${minutes}:${seconds} )`;
}

测试验证

调用convertDate(1515395248000),会得到和你用date.js完全一致的结果:

2018-01-08 ( 14:07:28 )

补充说明

  • 原生Date的getMonth()方法返回0-11的数字,所以必须加1才能得到正确的月份
  • 补零操作是为了确保日期时间的各个部分都保持两位数字的格式,和你想要的输出样式匹配
  • 这个实现完全基于JavaScript原生API,在所有现代浏览器和Node.js环境中都能正常运行

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 07:41:37