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
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    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 077
    Points : 17 165
    Points
    17 165
    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);
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  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 : 73
    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
    });

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  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