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

CryptoCompare API时间戳转日期异常及短格式展示求助

解决CryptoCompare API时间戳在EJS中显示错误的问题

嘿,我懂你碰到的这个糟心问题——那个1970年的奇怪日期肯定让你摸不着头脑!其实根源很简单:CryptoCompare返回的LASTUPDATE是秒级的Unix时间戳,但JavaScript的new Date()构造函数默认需要的是毫秒级时间戳,直接传入秒级数值的话,相当于把秒当成毫秒来解析,自然就得到了纪元初期的错误日期。

快速修复方案

只需要把时间戳乘以1000转换成毫秒,再调用toDateString()方法,就能直接得到你想要的短日期格式:

<p><%= new Date(display.RAW.ETH.USD.LASTUPDATE * 1000).toDateString() %></p>

这样就能输出类似Sun Jan 18 2025(根据实际时间戳变化)的格式,完全匹配你的需求。

自定义格式(可选)

如果之后需要更灵活的日期展示(比如加上时分秒),可以用toLocaleDateString()搭配配置项实现:

<% 
const updateDate = new Date(display.RAW.ETH.USD.LASTUPDATE * 1000);
// 自定义格式配置
const dateOptions = { 
  weekday: 'short', 
  month: 'short', 
  day: 'numeric', 
  year: 'numeric',
  hour: '2-digit',
  minute: '2-digit'
};
%>
<p>Last updated: <%= updateDate.toLocaleDateString('en-US', dateOptions) %></p>

这个会输出类似Sun Jan 18 2025, 15:27的格式,你可以根据需求调整配置项里的参数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:58:36