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 :

Fonction getDay() et données dans un array


Sujet :

JavaScript

  1. #1
    Membre habitué Avatar de legrandse
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Décembre 2010
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 350
    Points : 149
    Points
    149
    Par défaut Fonction getDay() et données dans un array
    Bonjour à tous,

    Pourriez-vous me dire comment faire pour traiter des données contenues dans un array en utilisant la fonction getDay()

    var departure = ["2018-10-18", "2018-10-11"];
    day = departure.getDay();

    Cela ne fonctionne pas dès qu'il y a plus d'un enregistrement dans l'array.

    En vous remerciant d'avance pour l'aide.


  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2015
    Messages : 19
    Points : 32
    Points
    32
    Par défaut
    Bonjour,

    Je ne comprends pas ce que tu cherches à faire.
    getDay() est une méthode de la classe Date pourquoi tu l'appliques sur un array ?

  3. #3
    Membre habitué Avatar de legrandse
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Décembre 2010
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 350
    Points : 149
    Points
    149
    Par défaut
    departure contient des dates.

    Dans mon code elles se présentent comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var departure = <?php echo json_encode($arrayDeparture); ?>;
    traduit textuellement en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var departure = ["2018-10-18", "2018-10-11"];
    ce que je souhaiterais c'est convertir ces dates en jour semaine avec getDay()

    j'ai essayé ceci sans succès:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    var departure = ["2018-10-18","2018-10-11"];
    var d = new Date(departure);
     var n = d.getDay();

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2015
    Messages : 19
    Points : 32
    Points
    32
    Par défaut
    Le type Date ne prend pas un array en paramètre à la création.
    Si ton objectif est de récupérer les jours de semaine à partir de ton tableau, tu peux faire un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        var n = [];
        var departure = ["2018-10-18", "2018-10-11"];
        departure.forEach(function(item){
      		n.push((new Date(item)).getDay());
    	});

  5. #5
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 097
    Points : 16 606
    Points
    16 606
    Par défaut
    Salut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var departure = ["2018-10-18","2018-10-11"];
    var d = new Date(departure[0]);
    console.log("d= " + d);
    var a = new Date(departure[1]);
    console.log("a= " + a);

  6. #6
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut


    Pour manipuler des dates en respectant les changements d'heure et les zones horaires, moment.js est incontournable : https://momentjs.com/

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script defer src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
    <script defer src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/locale/fr.js"></script>
    <script defer src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.20/moment-timezone-with-data.min.js"></script>

    Code JavaScript : 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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    window.addEventListener('load', ev => {
        // le DOM est construit et la page web est visible
     
        // début code du test
     
        moment.locale('fr');
     
        const departure = [moment("2018-10-18"), moment("2018-10-11")];
     
        // debug, console, touche F12
        // la première date au format ISO
        console.log(`departure[0] = ${ departure[0].format() }`);
     
        // le jour de la première date
        console.log(`departure[0].date() = ${ departure[0].date() }`);
     
        // récupérer les mois et les jours
     
        let
            mois = [],
            jours = [];
     
        for (const date of departure) {
            mois.push(date.month() + 1); // les mois sont numérotés de 0 à 11
            jours.push(date.date()); // le jour du mois
        }
     
        // debug; console, touche F12
        console.log(`mois = ${ mois }`);
        console.log(`jours = ${ jours }`);
     
        // fin code du test
     
    }, {
        capture: false,
        passive: true,
        once: false
    });

  7. #7
    Membre habitué Avatar de legrandse
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Décembre 2010
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 350
    Points : 149
    Points
    149
    Par défaut
    Merci à vous pour les différentes solutions proposées.

    Parmi celle-ci, Je retiens celle de IsmailChamssi qui me convient parfaitement.

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

Discussions similaires

  1. [Tableaux] Traitement de données dans un Array
    Par abeh25 dans le forum Langage
    Réponses: 9
    Dernier message: 30/06/2009, 13h57
  2. [Tableaux] Manipulation de données dans un Array
    Par arnaudperfect dans le forum Langage
    Réponses: 4
    Dernier message: 06/02/2009, 16h35
  3. Réponses: 3
    Dernier message: 29/09/2007, 14h45
  4. Connaître le nombre de donnée dans un array
    Par mordrhim dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 08/06/2007, 10h08
  5. Modifier l'État en fonction d'une donnée dans la base
    Par Pyrocyborg dans le forum Access
    Réponses: 1
    Dernier message: 30/06/2006, 18h40

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