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 :

Mauvais enregistrement dans une case tableau


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2009
    Messages
    598
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 598
    Points : 628
    Points
    628
    Par défaut Mauvais enregistrement dans une case tableau
    Bonjour

    J'ai une petite classe "sol" pour une map.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // la classe Sol().
    var Sol=function()
    {
      this.stype=0;
      this.posX=0;
      this.posY=0;
      this.Z=0;
    }
     
    lesol=new Sol();
    Aprés avoir créé l'objet, à un moment de mon code je place la valeur 6 dans stype et je place l'objet dans un tableau de cette façon :

    Cela fonctionne "bien" mais la valeur 6 se retrouve dans toute la ligne cely du tableau, au lieu d'être seulement dans la case celx,cely.
    Je veux dire que map[celx,cely] contient bien l'objet avec valeur 6 dans stype mais aussi les cellules qui sont sur la même ligne (anormal), et pas au-dessus ni au-dessous (ce qui est normal).


    Comment cela se peut-il ?

    PS : Au passage, auriez-vous une astuce pour mettre à 0 le contenu du tableau sans passer par une destruction/reconstruction du tableau ?
    Pour le moment je boucle pour pour mettre 0 partout avant d'y mettre mon objet, mais je trouve que ça fait pas pro.
    Cliquez ici et reprenez le pouvoir !
    A bas IE !, Google, et le pistage du net, testons DuckDuckGo.com
    Lords Of The Realm II Download : Lords of the realm 2
    Infos en anglais :Ici

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    J'ai rien compris !
    En particulier, d'où sort la notation map[celx,cely]
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2009
    Messages
    598
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 598
    Points : 628
    Points
    628
    Par défaut
    Merci Bovino,
    map[celx,cely] est un tableau à deux dimensions et j'y range un objet "lesol" dans la case celx,cely.
    Cliquez ici et reprenez le pouvoir !
    A bas IE !, Google, et le pistage du net, testons DuckDuckGo.com
    Lords Of The Realm II Download : Lords of the realm 2
    Infos en anglais :Ici

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Le problème, c'est que cette notation n'existe pas en JavaScript !
    Un tableau à deux dimensions, c'est plutôt map[celx][cely].

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var map = [];
    map[0, 1] = 6;
    console.log(map);  // Affiche [undefined, 6]
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2009
    Messages
    598
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 598
    Points : 628
    Points
    628
    Par défaut
    Ah je te remercie, je vais corriger
    Il m'avait semblé l'avoir bien utilisé ma version un jour sur un jeu javascript, merci.

    ça doit me venir de pascal ça :/

    Merci encore
    Cliquez ici et reprenez le pouvoir !
    A bas IE !, Google, et le pistage du net, testons DuckDuckGo.com
    Lords Of The Realm II Download : Lords of the realm 2
    Infos en anglais :Ici

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Ce qui est vicieux, c'est que la syntaxe bien que mauvaise, ne provoque pas d'erreur, elle se contente d'affecter la valeur au dernier élément demandé de map...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Membre confirmé
    Inscrit en
    Janvier 2009
    Messages
    598
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 598
    Points : 628
    Points
    628
    Par défaut
    elle se contente d'affecter la valeur au dernier élément demandé de map...
    Effectivement, c'est ce qui m'est arrivé, merci de ton aide
    Cliquez ici et reprenez le pouvoir !
    A bas IE !, Google, et le pistage du net, testons DuckDuckGo.com
    Lords Of The Realm II Download : Lords of the realm 2
    Infos en anglais :Ici

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 25/11/2007, 17h59
  2. [Tableau] Lien dans une case du tableau
    Par zsoh dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 30/08/2007, 11h20
  3. [debutante]Je voudrais metre chaques saisie dans une case du tableau
    Par vanilla94 dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 24/02/2007, 12h01
  4. Lien dans une case d'un tableau
    Par will89 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 27/04/2006, 10h50
  5. emplacement d'une image dans une case de tableau
    Par franfr57 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 24/04/2006, 08h54

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