Maison > interface Web > js tutoriel > Comment puis-je calculer la différence entre deux dates en années, mois et jours à l'aide de JavaScript ?

Comment puis-je calculer la différence entre deux dates en années, mois et jours à l'aide de JavaScript ?

Barbara Streisand
Libérer: 2024-12-01 04:29:09
original
609 Les gens l'ont consulté

How Can I Calculate the Difference Between Two Dates in Years, Months, and Days Using JavaScript?

Calcul des différences de date en années, mois et jours en JavaScript

En JavaScript, obtenir la différence entre deux dates avec précision peut être difficile en raison des variations dans la durée des mois et des années bissextiles. Cependant, si la précision de base est acceptable, une méthode de calcul simple peut être utilisée.

Fonction de calcul de date

Fonction pour calculer et formater la différence de date :

function calcDate(date1, date2) {
  const diff = date1.getTime() - date2.getTime();
  const day = 1000 * 60 * 60 * 24;

  const days = Math.floor(diff / day);
  const months = Math.floor(days / 31);
  const years = Math.floor(months / 12);

  return `${date2.toDateString()} was \
${days} days, ${months} months, ${years} years ago`;
}
Copier après la connexion

Exemple d'utilisation

const today = new Date();
const past = new Date(2010, 5, 1); // Note: Month values are zero-based, so June is 5

console.log(calcDate(today, past)); // Outputs: "Tue Jun 01 2010 was 1143 days, 36 months, 3 years ago"
Copier après la connexion

Sortie Interprétation

  • Jours : Différence en jours entiers entre la date actuelle et la date passée.
  • Mois : Différence en mois entiers entre la date actuelle et la date passée, calculée en divisant la différence de jours par le nombre moyen de jours dans un mois (31).
  • Années : Différence en années entières entre la date actuelle et la date passée, calculée en divisant la différence des mois par 12.

Notez que ce calcul ne tient pas compte des années bissextiles ni du nombre exact de jours dans chaque mois. Cette approche simplifiée fournit une estimation approximative de la différence pour la plupart des cas d'utilisation pratiques.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal