我已经为此奋斗了一段时间.我想把epoch转换成date对象.纪元以UTC格式发送给我.每当你在一个纪元中超过new Date(),它就会假定这是本地纪元.我try 创建一个UTC对象,然后使用setTime()将其调整到适当的历元,但唯一有用的方法是toUTCString()和字符串.如果我将该字符串传递到一个新日期,它应该会注意到它是UTC,但它不是.

new Date( new Date().toUTCString() ).toLocaleString()

我的下一次try 是试图得到当地当前纪元和UTC当前纪元之间的差异,但我也无法做到这一点.

new Date( new Date().toUTCString() ).getTime() - new Date().getTime()

它只给了我很小的差别,在1000以下,以毫秒为单位.

有什么建议吗?

推荐答案

我想我有一个更简单的解决方案——将初始日期设置为历元并添加UTC单位.假设以秒为单位存储了UTC历元变量.1234567890美元怎么样.要将其转换为当地时区的正确日期,请执行以下操作:

var utcSeconds = 1234567890;
var d = new Date(0); // The 0 there is the key, which sets the date to the epoch
d.setUTCSeconds(utcSeconds);

d现在是设置为Fri Feb 13 2009 18:31:30 GMT-0500 (EST)的日期(在我的时区内

Javascript相关问答推荐

在JS中获取名字和姓氏的首字母

仅圆角的甜甜圈图表

在页面上滚动 timeshift 动垂直滚动条

按下同意按钮与 puppeteer 师

PrivateRoute不是路由组件错误

当点击注册页面上的注册按钮时,邮箱重复

将旋转的矩形zoom 到覆盖它所需的最小尺寸&S容器

如何在模块层面提供服务?

无法使用单击按钮时的useState将数据从一个页面传递到另一个页面

如何在Angular17 APP中全局设置AXIOS

JavaScript是否有多个`unfined`?

Webpack在导入前混淆文件名

如何在箭头函数中引入or子句?

当代码另有说明时,随机放置的圆圈有时会从画布上消失

为列表中的项目设置动画

更改agGRID/Reaction中的单元格格式

连续添加promise 时,如何在所有promise 都已结算时解除加载覆盖

无法在Adyen自定义卡安全字段创建中使用自定义占位符

浮动标签效果移除时,所需的也被移除

如何让noWrap在嵌套在Alert/AlertTitle组件中的排版组件中工作?