formatCalendarDate = function (dateTime) {
    return moment.utc(dateTime).format('LLL');
};

它显示:“2013年2月28日09:24”

但是我想把最后的时间去掉。我该怎么做呢?

我用的是Moment.js。


当前回答

抱歉这么晚才插话,但如果你想删除moment()的时间部分,而不是格式化它,那么代码是:

.startOf('day')

裁判:http://momentjs.com/docs/ /操作/开始/

其他回答

我迟到了,但这对我来说非常有效:

moment().format('YYYY-MM-DD')

问题是——你可能会遇到时区的问题。例如,如果你这样解析日期:'2022-02-26T00:36:21+01:00',它可能会变成'25/02/2022'。如果你的日期是ISO格式的,你可以从字符串中截断时间部分,就像这样:

moment('2022-02-26T00:36:21+01:00'.split('T')[0]).utc().format('DD/MM/YYYY')

这个解决方案相当生硬,所以要小心字符串格式。

formatCalendarDate = function (dateTime) {
    return moment.utc(dateTime).format('LL')
}

使用格式(“我”)

取决于你想用它做什么,格式('LL')可以做到这一点。它会产生这样的东西:

Moment().format('LL'); // => April 29, 2016

好吧,我知道我来晚了。大概晚了6年,但这是我需要弄清楚的东西,并将其格式化为YYYY-MM-DD。

moment().format(moment.HTML5_FMT.DATE); // 2019-11-08

您也可以传入一个参数,如2019-11-08T17:44:56.144。

moment("2019-11-08T17:44:56.144").format(moment.HTML5_FMT.DATE); // 2019-11-08

https://momentjs.com/docs/#/parsing/special-formats/