-1

我会在javascript中获得timestamp通过。UTC Date我搜索并阅读了其他问题,但没有找到解决方案。

我有这个UTC 日期 2017-07-16 12:00:07.8 UTC,但如果我使用它会在UTC.getTime() 中返回时间戳(毫秒),然后再删除两个小时。

我在意大利,这里的 Date 是UTC+2,也许.getTime()用意大利时区读取数据,什么时候返回时间戳删除那 2 小时?可能吗?

var data= new Date(2017,06,16,12,0,7);
var mill= data.getTime();

alert(mill);

输出

1500199207

我希望你能帮助我,不要认为我的问题是重复的。谢谢...

4

3 回答 3

2

您可以使用 moment 来做到这一点:

http://momentjs.com/timezone/docs/

或者

日期对象正在使用 UTC。您可以在您的情况下使用 new 增加 2 小时Date().getTimezoneOffset();(女巫是否定的(-120 分钟))

于 2017-08-09T11:53:00.650 回答
1

您必须首先获取您的 timezoneoffset 并添加该时区差异。进入数据

var data = new Date(2017, 06, 16, 12, 0, 7);
var timestamp = -data.getTimezoneOffset() * 60;
var mill = data.getTime();
mill = mill+timestamp;

希望这对您有所帮助。

于 2017-08-09T11:52:25.677 回答
1

使用Date.UTC()代替new Date()

var mill= Date.UTC(2017,06,16,12,0,7);

alert(mill);

new Date()假设提供的值是针对浏览器当前时区的

于 2017-08-09T11:59:32.857 回答