从格式化日期获取UTC时间戳 - javascript

时间:2015-12-18 11:53:15

标签: javascript timestamp utc

我有一个UTC日期字符串 - > 10/30/2014 10:37:54 AM

如何获取此UTC日期的时间戳?据我所知,以下是将此作为当地时间处理

var d = new Date("10/30/2014 10:37:54 AM");
return d.getTime();

谢谢

6 个答案:

答案 0 :(得分:2)

您可以使用Date.UTC创建UTC格式的日期对象。

参考:



(function() {
  var d = new Date();
  var d1 = new Date(Date.UTC(d.getFullYear(), d.getMonth(), d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds()));

  console.log(+d);
  console.log(+d1);
})()




答案 1 :(得分:1)

如果格式已修复,您可以轻松解析它并使用Date.UTC() API。

答案 2 :(得分:1)

您可以减少" TimezoneOffset"

var d = new Date("10/30/2014 10:37:54 AM");
return d.getTime() - (d.getTimezoneOffset() *1000 * 60);

你也可以使用UTC功能

var d = new Date("10/30/2014 10:37:54 AM");
return Date.UTC(d.getFullYear(),d.getMonth()+1,d.getDate(),d.getHours(),d.getMinutes(),d.getSeconds());

答案 3 :(得分:0)

快速破解是在解析之前将UTC附加到字符串的末尾:

var d = new Date("10/30/2014 10:37:54 AM UTC"); 

但我建议你使用像moment.js这样的库,这样可以更容易地解析日期

答案 4 :(得分:0)

尝试Date.parse

var d = new Date("10/30/2014 10:37:54 AM");
var timstamp = Date.parse(d) / 1000;

答案 5 :(得分:0)

希望这会有所帮助:

Date date= new Date();
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  SimpleDateFormat sdf2 = new SimpleDateFormat("HH:mm:ss");

    date = sdf.parse(date.toString());
    String timestamp = sdf2.format(date);