如何在不改变时间的情况下将Date对象转换为UTC?

时间:2019-09-24 00:17:47

标签: javascript date datetime utc

假设我创建一个日期对象:

new Date() //Mon Sep 23 2019 17:16:37 GMT-0700 (Pacific Daylight Time)

如何在不转移的情况下将其转换为UTC?

结果应为:

Mon Sep 23 2019 17:16:37 GMT-0000

2 个答案:

答案 0 :(得分:1)

var d = new Date;
console.log(d.toString());
d.setMinutes(d.getMinutes() - d.getTimezoneOffset())
console.log(d.toUTCString());

var str = new Date().toString();
console.log(str);
str = str.replace(/\GMT[+-]\d+.*$/, 'GMT-0000')
console.log(str);

尽管,另一个可能的答案是,您只想更改字符串...甚至更简单

答案 1 :(得分:0)

如果您的目的只是设置GMT-0000,则可以简单地在GMT上分割并获取第一个元素并添加GMT-0000

console.log(new Date().toString().split(/GMT/,1)[0] + 'GMT-0000')