如何在 JS (UTC) 中添加 1 天到当前日期?

问题描述 投票:0回答:1

我的日期如下,

let date = '2024-03-11';

我想在上述日期基础上加 1 天

let newDate = mew Date(date); -> converting to local date -> 2024-03-10 (becoming -1)
newDate.setDate(newDate.getDate() + 1);

它运行良好,但问题是当我使用 new Date() 方法将我的日期转换为 2024-03-10 时,我得到了本地日期

有人可以帮助我如何在 UTC 日期中添加 1 个日期而不将其转换为本地时区吗?

javascript date
1个回答
0
投票

要向 UTC 日期添加一天而不将其转换为本地时区,您可以使用

Date.UTC()
方法以及
Date
对象构造函数。具体方法如下:

let date = '2024-03-11';
let parts = date.split('-');
let utcDate = new Date(Date.UTC(parts[0], parts[1] - 1, parts[2])); // Months are zero-indexed, so subtract 1 from the month

// Add one day
utcDate.setUTCDate(utcDate.getUTCDate() + 1);

// Format the new date
let newDate = utcDate.toISOString().slice(0, 10);
console.log(newDate); // Output: 2024-03-12

此代码创建一个具有 UTC 时间的新

Date
对象,并向其添加一天,而不将其转换为本地时区。

© www.soinside.com 2019 - 2024. All rights reserved.