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 :

Explication de code sur une boucle


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Points : 30
    Points
    30
    Par défaut Explication de code sur une boucle
    Bonjour,

    J'espère trouver entre vous quelqu'un qui peut m'aider à comprendre ce petit bout de code en javascript.
    Je désire créer une grille de jeu et j'ai tombé sur ce bout de code que j'ai pas bien compris.
    le code JS : je ne comprend pas, voir ligne 19
    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
    24
    25
     generationGrille() {
     
            var x = 0,
     
                y = 0,
     
                ligne = [],
     
                obstacles,
     
                casetab;
     
            for (y = 0; y < 11; y += 1) {
     
                ligne = [];
     
                for (x = 0; x < 11; x += 1) {
     
                   ligne.push("U");  // <**** je comprends pas l’intérêt de ce U ****
     
                }
     
                this.carte.push(ligne);
     
            }
    code html :
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <table id='carte'>
     
                    <tbody>
     
                    </tbody>
     
                </table>

    Et le CSS :
    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    td {
     
        background-image:url("../../image/case.png");
     
        height:50px;
     
        width:50px;
     
        background-size:contain;
     
        background-repeat:no-repeat;
     
        text-align:center; /* Pour centrer les images de joueurs */
     
    }

    merci d'avance

  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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    A priori je dirais que ça initialise un tableau avec l'état des cellules ...
    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
    Expert confirmé Avatar de psychadelic
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    2 529
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 2 529
    Points : 4 740
    Points
    4 740
    Par défaut
    ça fait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    this.carte[0][0] = 'U';
    this.carte[0][1] = 'U';
    this.carte[0][2] = 'U';
    // ...etc
    this.carte[0][9]  = 'U';
    this.carte[0][10] = 'U';
    this.carte[1][0]  = 'U';
    this.carte[1][1] = 'U';
    // ... / ... etc / etc
    this.carte[10][10] = 'U';
    et ça s'écrit plus simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     for (let y=0; y<11; y++) {
        for (let x=0; x<11; x++) {
          this.carte[x][y]  = 'U';
        }
      }
    SI LE TABLEAU this.carte est bien VIDE au départ.

    et sauf avoir surchargé l'instruction push(ce qui serait un gros délire pour remplir une table html), il n'y a aucun rapport entre <table id='carte'> et this.carte, en tout cas pas dans le code que tu nous montres
    «La pluralité des voix n'est pas une preuve, pour les vérités malaisées à découvrir, tant il est bien plus vraisemblable qu'un homme seul les ait rencontrées que tout un peuple.» [ René Descartes ] - Discours de la méthode

Discussions similaires

  1. question sur une boucle et un break
    Par isidore dans le forum C
    Réponses: 10
    Dernier message: 22/11/2006, 20h26
  2. [68HC11] Blocage sur une boucle
    Par paterson dans le forum Autres architectures
    Réponses: 3
    Dernier message: 10/11/2006, 20h45
  3. [VBA-E]PB sur une boucle for each next
    Par rond24 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 31/07/2006, 15h47
  4. Réponses: 11
    Dernier message: 19/06/2006, 16h54
  5. Problème sur une boucle
    Par Mateache dans le forum ASP
    Réponses: 6
    Dernier message: 31/01/2006, 09h48

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