gpt4 book ai didi

javascript - 将 JSON DateTime 转换为 JavaScript 日期时,它显示为比本地时区早 1 天

转载 作者:行者123 更新时间:2023-11-30 16:15:30 26 4
gpt4 key购买 nike

我正在发出如下 AJAX 请求:

$.ajax({
type: 'POST',
url: '@Url.Action("GetExpirationDates", "Products")',
data: data,
dataType: 'json',
success: function (data) {
var dateArray = data.map(function (date) {
var d = new Date(date);
return d.toLocaleDateString();
});
});

这是数据的样子:

2016-02-25T00:00:00,2016-03-25T00:00:00,2016-04-25T00:00:00

似乎只要我执行new Date(date),这些日期中的每一个都有机会显示为

2/24/2016, 3/24/2016, 4/24/2016

(比应该少一天)取决于本地时间。我知道这很可能是由于 JavaScript 处理时区的方式所致。我想知道如何修复它。

最佳答案

这取决于您希望如何使用最终结果。一个简单的例子是:

var d = new Date("2016-02-25T00:00:00");
d.getDate(); //returns 24 because my timezone is -06:00.
d.getUTCDate(); //returns 25, the UTC day of the month

getMonth/getUTCMonth 也可以这样做

我真的建议使用 moment.它就像

一样简单
moment("2016-02-25T00:00:00").format("MM/DD/YYYY"); //returns "02/25/2016"

它使您可以更好地控制 UTC 和格式化字符串。

关于javascript - 将 JSON DateTime 转换为 JavaScript 日期时,它显示为比本地时区早 1 天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35579126/

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