gpt4 book ai didi

javascript - 将字符串转换为日期而不考虑时区 - Typescript

转载 作者:行者123 更新时间:2023-11-28 17:19:16 24 4
gpt4 key购买 nike

我以字符串形式获取日期,格式如下(例如):

"11/10/2015 10:00:00"

这是 UTC 时间。

当我从此字符串创建日期时,它会将其视为本地时间:

let time = "11/10/2015 10:00:00";
let date = new Date(time);
console.log(date);

它打印:

"Tue Nov 10 2015 10:00:00 GMT+0200"

(不要将其视为 UTC:“2015 年 11 月 10 日星期二 10:00:00”)

我也尝试过 moment.js。

有没有一种好方法可以让 Date() 将字符串视为 UTC,而不在字符串末尾添加“Z”/“UTC”/“+000”?

最佳答案

您可以使用内置的 Date.UTC() 函数来执行此操作。这是一个小函数,它将采用您在原始帖子中提供的格式并将其转换为 UTC 日期字符串

let time = "11/10/2015 10:00:00";

function getUTCDate(dateString) {
// dateString format will be "MM/DD/YYYY HH:mm:ss"
var [date, time] = dateString.split(" ");
var [month, day, year] = date.split("/");
var [hours, minutes, seconds] = time.split(":");
// month is 0 indexed in Date operations, subtract 1 when converting string to Date object
return new Date(Date.UTC(year, month - 1, day, hours, minutes, seconds)).toUTCString();
}

console.log(getUTCDate(time));

关于javascript - 将字符串转换为日期而不考虑时区 - Typescript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52743931/

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