IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Ecart entre 2 dates


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 154
    Par défaut Ecart entre 2 dates
    Bonjour à tous, j'espère que vous pourrez m'aider avant que je devienne totalement fou. J'essaye de pondre un script tout simple me donnant le nb de jours entre deux dates.

    Ca à l'air simple dit comme ca mais en fait non....

    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var dd1=new Date(datefin.substring(6, 10), datefin.substring(3, 5), datefin.substring(0, 2));
    var dd2=new Date(datedebut.substring(6, 10), datedebut.substring(3, 5), datedebut.substring(0, 2));
    gap = dd1.getTime() - dd2.getTime(); 
    alert(gap / 86400000);
    Donc qq tests pour illustrer le soucis:

    si je met datedebut=01/01/2007 et datefin=31/03/2007
    cela fait donc 90 jours tout piles
    il me retourne 88.958333333 <--- pas bon même arrondie

    Voila je comprend pas d'ou viens le probeme

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    direction FAQ pour les opérations sur les dates ... merci !
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 154
    Par défaut
    Tu te doute que j'ai déjà regarder. J'ai parcouru le web en long en large et en travers. Rien n'explique pk mon code ne donne pas le bon résultat.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    parceque l'on ne travaille pas sur des dates en subString, mais en getDay() getDate() getMonth() getfullYear()

    voire en UTC ...

    Une source d'inspiration :
    http://www.developpez.net/forums/sho...highlight=date
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 154
    Par défaut
    Je ne pense pas que le soucis vienne de la. Mes dates d'affiche correctement lorsque j'interroge la variable dd1.

    J'ai essayer aussi avec UTC, même résultat pour la plage de date donnée.

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    Tu as une erreur sur le mois ils commencent à 0 ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    <script type='text/javascript'>
     
    var datedebut="01/01/2007 "
    var datefin="31/03/2007"
     
    var dd1=new Date
    dd1.setUTCFullYear( datefin.substring(6, 10));
    dd1.setUTCMonth( datefin.substring(3, 5)-1)
    dd1.setUTCDate(datefin.substring(0, 2))
     
    var dd2=new Date();
    dd2.setUTCFullYear( datedebut.substring(6, 10));
    dd2.setUTCMonth( datedebut.substring(3, 5)-1)
    dd2.setUTCDate(datedebut.substring(0, 2))
     
     
     
     
    alert(dd1.toLocaleString())
    gap = dd1 - dd2; 
    alert(gap / 86400000);
    </script>
    et il n'y a que 89 jour, pas 90 ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre confirmé
    Inscrit en
    Janvier 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 154
    Par défaut
    Merci pour l'aide!!!

    Et ça fait bien 90

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Calcul ecart entre 2 dates
    Par Pachina75 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 16/06/2014, 18h39
  2. [AC-2007] calcul ecart entre date jour ouvrable
    Par popofpopof dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 04/12/2012, 13h51
  3. Ecart entre 2 date
    Par toss.net dans le forum Requêtes
    Réponses: 1
    Dernier message: 20/04/2010, 10h05
  4. Ecart entre 2 dates (en mois)
    Par Ggamer dans le forum Général Python
    Réponses: 3
    Dernier message: 04/05/2008, 12h16
  5. calcule du nombre de jours entre 2 dates
    Par nazimb dans le forum ASP
    Réponses: 4
    Dernier message: 28/09/2004, 15h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo