gpt4 book ai didi

Javascript 日期时间字符串转 UTC 日期时间和 UTC 转本地日期时间

转载 作者:行者123 更新时间:2023-11-28 15:18:46 29 4
gpt4 key购买 nike

我需要将字符串转换为 UTC 日期,然后将 UTC 日期转换为本地日期。

这是我的代码:

var dateStr = "9/8/2015 12:44:00 PM";
console.log(strtoUTCtoLocal(dateStr));

function strtoUTCtoLocal(dateStr)
{
var d1 = new Date(dateStr).toUTCString();
var d2= new Date(d1);

return "0" + (d2.getMonth()+1).toString().slice(-2) + "/" +
"0" + d2.getDate().toString().slice(-2) + "/" +
d2.getFullYear().toString() + " " +
d2.getHours().toString() + ":" +
d2.getMinutes().toString();
}

最佳答案

解析日期字符串应该手动完成,因为 Date.parse 在不同浏览器中不一致。假设您的格式为 d/m/y,您可以使用以下命令将其解析为 UTC 时间:

    var s = '9/8/2015 12:44:00 PM';

function parseDate(s) {
var b = s.split(/\D+/);
var ap = /pm$/i.test(s)? 12 : 0;
return new Date(Date.UTC(b[2], b[1]-1, b[0], ((b[3]%12) + ap), b[4], b[5]));
}

document.write(parseDate(s));

如果您需要验证日期,则需要额外的一行代码。

请注意,默认情况下,没有时区的字符串通常会解析为本地(ES5 中使用 Date.parse 的 ISO 8601 格式字符串除外,但 ECMAScript 2015 将它们解析为本地,在 ECMAScript 2016 中更改为 UTC)。

关于Javascript 日期时间字符串转 UTC 日期时间和 UTC 转本地日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32458787/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com