1

我正在使用 Luxon 并想计算当前半小时的开始时间。目前,要获得 Luxon DateTime,我正在做:

const startOfHalfHour = millis => DateTime.fromMillis(millis - (millis % (30 * 60 * 1000)))

我是否错过了一种更简单、更惯用的方式?DateTime#startOf()没有“半小时”单位。

4

1 回答 1

1

Luxon 没有半小时单位,所以不,没有内置的方法可以做到这一点。我会做这样的事情:

DateTime.prototype.startOfHalfHour = function() {
  let result = this.startOf("hour");
  if (this.minute >= 30)
    result = result.set({ minute: 30 });
  return result;
};

var dt = DateTime
  .fromISO("2020-05-25T10:35:12")
  .startOfHalfHour();

console.log(dt.toISO());
于 2020-04-02T16:58:47.910 回答