如何用 moment.js 显示时间?

How to display the time of day with moment.js?

如果在中午 12 点之前,我如何显示“星期日上午”或如果在中午 12 点之后显示“星期日下午”?

我正在使用下面的方法获取当天

var now = moment().format("dddd");
$("#date").append(now);
<span id="date"></span>

像这样的东西可能会成功:

console.log(`${moment().format("dddd")} ${(moment().format("a") === 'am' ? ' Morning' : 'Afternoon')}`)

请注意 moment.js 正在逐步淘汰,不建议在新项目中使用。

不幸的是,

Moment.js 没有 morning/afternoon/evening 的内置令牌,但您可以伪造它。

const [day, hour, am_pm] = moment().format("dddd,h,A").split(",");
let dateOut;

if (am_pm === 'AM') {
  dateOut = `${day} morning`;
} else {
  if (hour === 12 || hour < 6) {
    dateOut = `${day} afternoon`;
  } else {
    dateOut = `${day} evening`;
  }
}