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

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

Susan Sarandon
Susan Sarandonoriginal
2024-12-03 04:06:07910parcourir

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

Calculer les différences de dates en années, mois et jours en JavaScript

Déterminer la différence précise entre deux dates, en tenant compte de facteurs tels que les années bissextiles et des durées variables en mois, peuvent en effet être une tâche complexe. Cependant, pour un calcul basique et approximatif, le code JavaScript suivant peut fournir une estimation raisonnable :

today = new Date()
past = new Date(2010,05,01) // remember this is equivalent to 06 01 2010
//dates in js are counted from 0, so 05 is june

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

    var days = Math.floor(diff/day);
    var months = Math.floor(days/31);
    var years = Math.floor(months/12);
    
    var message = date2.toDateString();
    message += " was "
    message += days + " days " 
    message += months + " months "
    message += years + " years ago \n"
    
    return message
    }
        

a = calcDate(today,past)
console.log(a) // returns Tue Jun 01 2010 was 1143 days 36 months 3 years ago

L'appel de la fonction calcDate avec deux objets Date (par exemple, aujourd'hui et passé) calcule la différence de temps en millisecondes et le divise par le nombre de millisecondes dans une journée pour obtenir le nombre de jours. Les jours sont ensuite regroupés en mois et en années à titre approximatif.

Cette méthode fournit une estimation de base de la différence de date en termes de jours, de mois et d'années, mais elle ne prend pas en compte toutes les subtilités du calendrier grégorien. . Pour des calculs plus précis ou des exigences spécifiques, pensez à utiliser une bibliothèque ou un module dédié qui gère ces complexités avec plus de précision.

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!

Déclaration:
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