如何通过 javascript 中的 UTC 日期获取时间戳?

How get timestamp by UTC Date in javascript?

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

我有这个 UTC 日期 2017-07-16 12:00:07.8 UTC 但如果我使用 .getTime() 它 returns timestampt(毫秒)在 UTC 再删除两个小时。

我在意大利,这里的日期是 UTC+2,也许 .getTime() 使用意大利时区读取数据,当 returns 时间戳删除那个 2小时?可能吗?

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

alert(mill);

输出

1500199207

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

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

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

希望对您有所帮助。

你可以用moment做:

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

日期对象正在使用 UTC。您可以使用新的 Date().getTimezoneOffset(); 在您的案例中增加 2 小时( 为负数(-120 分钟))

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

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

alert(mill);

new Date() 假定提供的值适用于浏览器的当前时区