Time Since Formatting
In the realm of digital communication, it's commonplace to encounter timestamps that display the elapsed time since a specific event. Platforms like Stack Overflow exemplify this practice, providing users with convenient time-based information. This capability can be replicated in JavaScript, allowing you to format dates into strings that concisely convey the time lapsed.
The following solution harnesses the power of JavaScript's Date object to accomplish this task:
function timeSince(date) { const seconds = Math.floor((new Date() - date) / 1000); let interval; if (seconds / 31536000 > 1) { interval = Math.floor(seconds / 31536000); return `${interval} years`; } else if (seconds / 2592000 > 1) { interval = Math.floor(seconds / 2592000); return `${interval} months`; } else if (seconds / 86400 > 1) { interval = Math.floor(seconds / 86400); return `${interval} days`; } else if (seconds / 3600 > 1) { interval = Math.floor(seconds / 3600); return `${interval} hours`; } else if (seconds / 60 > 1) { interval = Math.floor(seconds / 60); return `${interval} minutes`; } else { return `${Math.floor(seconds)} seconds`; } } console.log(timeSince(new Date(Date.now() - (24 * 60 * 60 * 1000)))); console.log(timeSince(new Date(Date.now() - (2 * 24 * 60 * 60 * 1000))));
By leveraging this function, you can now easily convert JavaScript timestamps into user-friendly time-elapsed strings, mirroring the format adopted by platforms like Stack Exchange.
The above is the detailed content of How to Format Dates into Time-Elapsed Strings in JavaScript?. For more information, please follow other related articles on the PHP Chinese website!