📅  最后修改于: 2023-12-03 15:32:55.985000             🧑  作者: Mango
moment().from()
是 Moment.js 的一个函数,它用于计算给定日期与当前日期之间的时间差,并将其显示为相对时间。具体来说,它会显示现在距离给定日期过去了多久,或者距离未来的某个日期还有多久。
moment("2022-01-01").fromNow(); // "in 1 year"
moment("2021-12-31").fromNow(); // "in 11 months"
moment("2021-12-31 12:00:00").fromNow(); // "in 11 months"
moment().subtract(10, 'days').fromNow(); // "10 days ago"
moment().subtract(1, 'month').fromNow(); // "1 month ago"
moment().fromNow()
接受一个可选参数,表示将日期相对于哪个日期。(默认为当前日期)
moment("2021-12-31").from("2020-12-31"); // "in 365 days"
moment().from()
计算的时间差精确到毫秒,但通常用到的只是其中的某一部分,例如“1天前”、“2小时前”、“5分钟前”等。以下是 moment.js 支持的时间单位。
"now"
"second"
"seconds"
"minute"
"minutes"
"hour"
"hours"
"day"
"days"
"week"
"weeks"
"month"
"months"
"year"
"years"
moment().startOf('hour').fromNow(); // "32 minutes ago"
moment.duration()
可以自定义参数,以显示指定时间单位的时间差。例如,下面的代码计算给定日期距离当前时间的小时数,保留一位小数,并指定了自定义前缀和后缀。
var duration = moment.duration(moment("2021-12-31").diff(moment()));
var hours = duration.asHours().toFixed(1);
var prefix = hours > 0 ? "in " : "";
var suffix = hours > 0 ? "" : " ago";
prefix + hours + " hours" + suffix; // "in 8760.0 hours"
moment().from()
是一个非常有用的函数,可以让我们方便地计算给定日期与当前日期之间的相对时间。它支持多种时间单位,可以自定义参数,并且易于集成到任何 Moment.js 项目中。