我想以D-7
或D+2
之类的格式显示日期
我想用moment.js
实现它。
我已经从moment.js文档中找到了一些参考,但是它们并不准确。
moment(expireAt).fromNow();
// it returns "in 7 days" but I want to see "D+7"
有什么简单的方法可以实现我的目标?
答案 0 :(得分:3)
假设7
和2
是天,则可以使用diff
,也许可以使用duration
。
例如:
function daysDiff(from, to) {
const duration = moment.duration(to.diff(from));
const diff = duration.as("days");
return "D" + (diff < 0 ? String(diff) : "+" + diff);
}
console.log(daysDiff(
moment("2019-09-01"),
moment("2019-09-08")
));
console.log(daysDiff(
moment("2019-09-03"),
moment("2019-09-01")
));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>