gpt4 book ai didi

javascript - Moment.js 如何使用 fromNow() 在数小时内返回所有内容?

转载 作者:搜寻专家 更新时间:2023-11-01 05:03:49 24 4
gpt4 key购买 nike

我正在搜索 moment.js docsstackoverflow了解一种使用 fromNow() 函数但在数小时内返回所有内容的方法。

我的意思是:

moment([2017, 01, 05]).fromNow();     // a day ago

应该是

moment([2017, 01, 05]).fromNow();     // 24 hours ago

我知道可以使用 .diff 和可能的其他类似函数然后添加文本来执行此操作,但是是否可以使用 .fromNow() 来执行此操作这个?

最佳答案

您可以使用 relativeTimeThreshold自定义矩相对时间的阈值。

正如文档所说:

duration.humanize has thresholds which define when a unit is considered a minute, an hour and so on. For example, by default more than 45 seconds is considered a minute, more than 22 hours is considered a day and so on. To change those cutoffs use moment.relativeTimeThreshold(unit, limit) where unit is one of s, m, h, d, M.

在您的情况下,您可以增加小时阈值以获得相对天数作为小时数。这是一个工作示例,显示时间为从 1 小时到 26 天的小时数:

var m1 = moment().subtract(5, 'h');
var m2 = moment().subtract(55, 'h');
var m3 = moment().subtract(1, 'd');

// Default results
console.log(m1.fromNow());
console.log(m2.fromNow());
console.log(m3.fromNow());

// Change relativeTimeThreshold
moment.relativeTimeThreshold('m', 60);
moment.relativeTimeThreshold('h', 24*26);

// Results in hours
console.log(m1.fromNow());
console.log(m2.fromNow());
console.log(m3.fromNow());
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>

请注意,如果需要,您可以使用 moment 进一步自定义相对时间 relativeTime ( here 我的例子之一)和 relativeTimeRounding方法。

关于javascript - Moment.js 如何使用 fromNow() 在数小时内返回所有内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41508796/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com