如何从UTC字符串获取小时和分钟?

Tal*_*les 1 javascript date

我想将日期时间从本地时间转换为UTC,然后再将该UTC时间解码回我的原始本地时间。

要将本地时间转换为UTC,我使用了下面的代码,效果很好。

const now = new Date();    
let d = Date.UTC(now.getFullYear(), now.getMonth(), now.getDate(), 13, 5, 0);
console.log(new Date(d).getHours(), new Date(d).getMinutes());
Run Code Online (Sandbox Code Playgroud)

上面的代码提供的UTC时间为+5:30,输出为18,35(18:35:00)

在这里,要将18,35(18:35:00)转换回13:05:00,我使用了以下代码

const now = new Date();
let d = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 18, 35, 0);
console.log(d.toUTCString());
Run Code Online (Sandbox Code Playgroud)

上面的代码为我提供了一个字符串格式的日期,该日期的时间为13:05:00是正确的。

现在,我想从该日期字符串中获取小时和分钟。

我尝试添加:

new Date(d.UTCString()) 
Run Code Online (Sandbox Code Playgroud)

但是,它为我提供了18小时和35分钟,而我希望13小时和05分钟。请帮我解决一下这个。谢谢。

Roh*_*iya 5

const now = new Date();
let d = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 18, 35, 0);
console.log(d.getUTCHours(), d.getUTCMinutes());
Run Code Online (Sandbox Code Playgroud)