javascript – Moment.js unix时间戳显示时间总是以分钟为单位

前端之家收集整理的这篇文章主要介绍了javascript – Moment.js unix时间戳显示时间总是以分钟为单位前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Moment.js并希望将unix时间戳转换为(总是)显示从当前时间开始的分钟.例如,4分钟前,30分钟前,94分钟前,等等.

现在我正在使用:

moment.unix(d).fromNow()

但这并不总是在几分钟内显示,例如一小时前,一天前,等等.我已经尝试过使用.asMinutes()但我相信这只是带有moment.duration()的单词.

解决方法

不确定使用原生Moment方法是否可行,但您可以轻松制作自己的Moment扩展:
moment.fn.minutesFromNow = function() {
    return Math.floor((+new Date() - (+this))/60000) + ' mins ago';
}
//then call:
moment.unix(d).minutesFromNow();

Fiddle

请注意,其他时刻方法在minutesFromNow()之后将无法链接,因为我的扩展返回一个字符串.

编辑:

固定复数的延伸(0分钟,1分钟,2分钟):

moment.fn.minutesFromNow = function() {
    var r = Math.floor((+new Date() - (+this))/60000);
    return r + ' min' + ((r===1) ? '' : 's') + ' ago';
}

如果您喜欢长形,也可以用“分钟”替换“min”.

Fiddle

原文链接:https://www.f2er.com/js/156859.html

猜你在找的JavaScript相关文章