【发布时间】:2017-04-10 11:56:54
【问题描述】:
我在节点 js 中工作,通过使用时刻时区 package 我生成了一个日期:
2017-4-10 19:04:47
下面是我用来生成这个日期时间的代码,它适用于亚洲/上海时区:
var momentTimezone = require('moment-timezone');
console.log(momentTimezone(new Date()).tz('Asia/shanghai').format('Y-M-D HH:MM:ss'));
现在我想从这个时间中减去几个小时来生成另一个日期。我想减去 9940 小时。
我已经搜索了很多小时,但找不到确切的解决方案。
下面是我必须复制的python代码:
end_time = datetime.now(g.china)
//g.china = timezone("Asia/Shanghai")
begin_time = end_time - timedelta(hours=9940)
对此的任何指导将不胜感激。
谢谢!
【问题讨论】:
-
将两者都转换为毫秒减法,然后读取新日期,这将从当前日期减去 24 小时 "new Date(Date.parse(new Date()) - (24*60*60*1000 ));"
-
moment.js 的文档(它们在客户端/服务器端都相同)告诉如何减去 9940 小时(这很多......)
Moment.js docs - Subtract。检查“添加”表中的正确键。 -
在 Moment 网站的首页我可以看到类似
moment().subtract(10, 'days')的内容:-? -
@KarelG 时刻接受时区吗?因为我想有上海时间,即 CST。
-
@Simer moment 为此使用了一个插件:moment timezone,它读取/转换时区。
标签: javascript node.js datetime momentjs