如果我运行var myDate = new Date('29-06-2016 10:00'),myDate将只包含一件事:数字。01-01-1970 00:00:00 :00至29-06-2016 10:00:00 XXX的毫秒数
XXX是操作系统的时区。在我的例子中,BST (因为这是一个夏季的约会,在冬季将是格林尼治时间)。
现在..。如果我想要01-01-1970的毫秒.到29-06-2016 10:00格林尼治时间-7点?
我只找到了一些方法来告诉我GMT-7时区的时区是什么时候,而在BST时区是29-06-2016 10:00,但这不是我想要的!
另外,要改变环境变量,使时区为GMT-7不是一个选项.
发布于 2016-06-29 14:41:54
我想我找到了一种方法,使用moment.js,就像ErikS建议的那样:
// This code is running in a Node.js server configured to use UTC
// Incorrect date, as it is interpret as UTC.
// However, we do this to get the utcOffset
var auxDate = moment.tz(new Date('2016-6-23 10:15:0'), 'US/Mountain');
// Get the milliseconds since 1970 of the date as if it were interpreted
// as GMT-7 or GMT-6 (depends on the date because of Daylight Saving Time)
var milliseconds = auxDate.valueOf() - auxDate.utcOffset() * 60000;https://stackoverflow.com/questions/38098201
复制相似问题