我在节点js工作,并使用moment-timezone 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)
对此的任何指导都将受到高度赞赏。
谢谢!
答案 0 :(得分:3)
您只需使用时刻subtract
方法。
这是一份工作样本:
// Current time in Shanghai
var m = moment.tz('Asia/Shanghai');
console.log(m.format('Y-M-D HH:mm:ss'));
// Subtract 9940 hours
console.log(m.subtract(9940, 'hours').format('Y-M-D HH:mm:ss'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.7/moment-timezone-with-data-2010-2020.min.js"></script>
请注意,您应该使用小写mm
来显示分钟,因为大写MM
代表几个月。请参阅format
令牌。