Partage
  • Partager sur Facebook
  • Partager sur Twitter

Enlever un champ dans un tableau

    16 juin 2010 à 20:46:42

    Bonjour à tous,
    je suis en train de développer une application sur Javascript en ce moment ... et je liste dans un tableau bombes la liste des bombes placées sur un terrain, chaque élement contient une structure contenant (id, x, y, option).

    A chaque fois que je pose une bombe, elle est ajoutée à la liste, là aucun problème.
    Ensuite quand la bombe explose, je dois l'enlever (c'est toujours la première bombe qui explose) ... mais là, c'est le drame !
    J'ai beau utiliser la fonction shift, le faire manuellement avec une boucle for, rien ne marche.
    En fait, dans la fonction ca marche, mais hors de la fonction ca ne marche plus ...

    En gros j'ai ça :

    function explose_bombe(id_bombe) {
    
    Fct_Test(bombes);
    
    	alert(bombes.length);
    	bombes.shift();
    	alert(bombes.length);
    	
    	Fct_Test(bombes);
    
    }
    
    bombes[nb_bombe] = new gen_infos(nb_bombe, new_x, new_y, '');
    setTimeout('explose_bombe('+nb_bombe+');',t*1000);
    nb_bombe++;
    


    Et la console d'erreur de firefox me dit que bombes[i] n'est pas défini après cela ...

    Des idées ?
    • Partager sur Facebook
    • Partager sur Twitter
      17 juin 2010 à 0:01:05

      Si j'ai bien compris, tu veux pouvoir supprimer n'importe quelle donnée d'un tableau.

      Si c'est ça, je pense que la meilleure solution est de créer un tableau temporaire, que tu remplis avec ton tableau d'origine SAUF la donnée que tu veux supprimer. Et ensuite, tu affectes ce tableau temporaire à ton tableau de base.

      Parce qu'après, il faut commencer à partir dans des tris complexe pour placer la donnée en début ou en fin de tableau. Et c'est plus compliqué à faire que l'utilité que tu en as, finalement.
      • Partager sur Facebook
      • Partager sur Twitter
      Directeur technique, créateur de jeux HTML5 et fan de JavaScript | La suite de OnHack est sur les rails !

      Enlever un champ dans un tableau

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown