formatCalendarDate = function (dateTime) {
return moment.utc(dateTime).format('LLL');
};
它显示:“2013年2月28日09:24”
但是我想把最后的时间去掉。我该怎么做呢?
我用的是Moment.js。
formatCalendarDate = function (dateTime) {
return moment.utc(dateTime).format('LLL');
};
它显示:“2013年2月28日09:24”
但是我想把最后的时间去掉。我该怎么做呢?
我用的是Moment.js。
当前回答
使用格式(“我”)
取决于你想用它做什么,格式('LL')可以做到这一点。它会产生这样的东西:
Moment().format('LL'); // => April 29, 2016
其他回答
您可以使用这个构造函数
moment({h:0, m:0, s:0, ms:0})
http://momentjs.com/docs/#/parsing/object/
console.log(时刻)。格式('YYYY-MM-DD HH:mm:ss')) Console.log (moment({h:0, m:0, s:0, ms:0})。格式('YYYY-MM-DD HH:mm:ss')) < script src = " https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js " > < /脚本>
使用格式(“我”)
取决于你想用它做什么,格式('LL')可以做到这一点。它会产生这样的东西:
Moment().format('LL'); // => April 29, 2016
formatCalendarDate = function (dateTime) {
return moment.utc(dateTime).format('LL')
}
对于像我这样想要长日期格式(LLLL)但没有一天中的时间的人来说,GitHub上有一个问题:https://github.com/moment/moment/issues/2505。现在,有一个变通办法:
var localeData = moment.localeData( moment.locale() ),
llll = localeData.longDateFormat( 'llll' ),
lll = localeData.longDateFormat( 'lll' ),
ll = localeData.longDateFormat( 'll' ),
longDateFormat = llll.replace( lll.replace( ll, '' ), '' );
var formattedDate = myMoment.format(longDateFormat);
问题是——你可能会遇到时区的问题。例如,如果你这样解析日期:'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')
这个解决方案相当生硬,所以要小心字符串格式。