用自然语言格式化经过的时间
在显示时间戳时,用自然语言表达经过的时间可以更加人性化,例如“4 分钟前”而不是“2023-03-08 14:05:03”。本文演示了如何以这种简洁易读的方式格式化 JavaScript Date 对象。
提供的函数 timeSince 计算当前日期与给定日期之间的差异。然后,它根据经过的秒数将经过的时间分类为年、月、日、小时、分钟或秒。
function timeSince(date) { var seconds = Math.floor((new Date() - date) / 1000); var interval = seconds / 31536000; if (interval > 1) { return Math.floor(interval) + " years"; } interval = seconds / 2592000; if (interval > 1) { return Math.floor(interval) + " months"; } interval = seconds / 86400; if (interval > 1) { return Math.floor(interval) + " days"; } interval = seconds / 3600; if (interval > 1) { return Math.floor(interval) + " hours"; } interval = seconds / 60; if (interval > 1) { return Math.floor(interval) + " minutes"; } return Math.floor(seconds) + " seconds"; }
例如:
var aDay = 24 * 60 * 60 * 1000; console.log(timeSince(new Date(Date.now() - aDay))); // "1 day ago" console.log(timeSince(new Date(Date.now() - aDay * 2))); // "2 days ago"
以上是如何在 JavaScript 中以自然语言格式化经过的时间?的详细内容。更多信息请关注PHP中文网其他相关文章!