Formatage du temps écoulé en langage naturel
Lors de l'affichage des horodatages, il peut être plus convivial d'exprimer le temps écoulé en langage naturel, tel que « il y a 4 minutes » au lieu de « 08/03/2023 14:05:03 ». Cet article montre comment formater les objets JavaScript Date de cette manière concise et lisible.
La fonction fournie, timeSince, calcule la différence entre la date actuelle et une date donnée. Il classe ensuite le temps écoulé en années, mois, jours, heures, minutes ou secondes en fonction du nombre de secondes écoulées.
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"; }
Par exemple :
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"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!