使用 MomentJS 计算日期在月边界上的差值

Calculating difference between dates over month border with MomentJS

本文关键字:边界 MomentJS 计算 日期 使用      更新时间:2023-09-26

我想显示某一天的数据并显示正确的日期

结构是这样的

daysago = [
{//...}, // today
{//...}, // yesterday
{//...}, // 2 days ago
{//...}, // 3 days ago
]

因此,如果我想获取昨天的数据,我可以读取daysAgo[1]

一切都很好,除了日期部分。

今天(2月3日),一天前的日期显示33. February。我想问题出在瞬间.js有麻烦....东西?(因为它从 2 月 1 日开始)

getSingleDayStats = function(req, res, id, level, day) {
  var daysAgoStart = moment().subtract(day, 'days').startOf('day');
  var daysAgoEnd = moment(daysAgoStart).add(1, 'days');
  var dateString = moment(daysAgoStart).format('DDD. MMM YYYY'); // this ends up wrong
}

为什么错了?我什至没有看到问题

moment()应返回当前日期。我减去 1 天并使其成为字符串。

这是怎么回事?

谢谢

DDD,这是一年中的一天。要显示月份的日期,您应该DD

var dateString = moment(daysAgoStart).format('DD. MMM YYYY');

http://momentjs.com/docs/#/displaying/