gpt4 book ai didi

javascript - moment.calendar() 显示 "Tomorrow",而预期为 "Today"

转载 作者:行者123 更新时间:2023-11-28 04:08:10 26 4
gpt4 key购买 nike

我正在使用 moment.js 来管理我的应用中的日期。但由于某些原因,日历并不总是显示预期的结果,有时我期待一个今天值,而我终于得到一个明天值(其他值似乎任何时候都是对的)。

作为函数中的入口值,我有一个时间戳,在内部运行 moment.now() 来获取当前日期,最后使用日历函数来比较当前日期和我的时间戳

这是 API 问题吗?或者也许新的日子是在 12 小时后计算的?

//时间戳 = 1506982867000

$scope.testDate = function(timeStamp)
{
// Getting my timeStamp into a moment
var day = moment(timeStamp);

// Getting the current day
var now = moment();

// moment.Calendar() function
return day.calendar(now, {
sameDay: '[Today]',
nextDay: '[Tomorrow]',
nextWeek: 'dddd',
lastDay: 'dddd',
lastWeek: 'dddd',
sameElse: 'L'
});

};

编辑

好吧,当我尝试在此网站上检查我的日期时:https://www.epochconverter.com/如果是 GMT,我会得到正确的日期;如果是 GMT+2,我会得到错误的日期(我在应用程序中得到的日期)。

如何修改我的日历中的 GMT 值?

最佳答案

我通过使用 moment().utcOffset() 方法解决了这个问题。感谢弗兰的帮助!

$scope.testDate = function(timeStamp)
{
// utcOffset(a) parameter a is for GMT+a
var day = moment(timeStamp).utcOffset(0);
var now = moment().utcOffset(0);

// moment.Calendar() function
return day.calendar(now, {
sameDay: '[Today]',
nextDay: '[Tomorrow]',
nextWeek: 'dddd',
lastDay: 'dddd',
lastWeek: 'dddd',
sameElse: 'L'
});

};

关于javascript - moment.calendar() 显示 "Tomorrow",而预期为 "Today",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46522297/

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