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 :

Supprimer un élément de tableau


Sujet :

JavaScript

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 19
    Par défaut
    Bonjour,

    je voudrais savoir comment je peux supprimer un élément se trouvant dans un tableau...

    Pour ajouter des éléments j'ai fait :
    MonTab[0] = new Element(p1,p2);
    MonTab[1] = new Element(p1,p2);

    mais maintenant comment faire pour supprimer un élément ? Est-ce que si je fais :
    MonTab[1] = null
    ça suffira pour que MonTab.length soit maintenant égal à 1 ?

    j'ai testé et le fait de mettre l'élément à null ne supprime pas l'enregistrement du tableau apparemment... MonTablo.length n'est pas égal à 1...

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 72
    Par défaut
    Quand tu fais tab[i] = null, tu te contentes de mettre la valeur null (c'est à dire 0) a l'adresse de ta variable.

    Utilise l'opérateur delete pour supprimer une variable, mais je ne sais pas si ça affectera la taille de ton tableau.

    Faut essayer

  3. #3
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    J'ai pas trouver de fonction le faisant directement donc voici une idée :
    SI c'est pas le dernier élément tu supprimes l'élément à i puis tu fais un décalage de i+1 à imax puis une fois que c'est fait tu fais ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <script type="text/javascript">
    <!--
     function retirer()
     {
      tableau.pop();
     }
    //-->
    </script>
    ps : tableau doit etre le nom de ton tableau

    Pour le décalage tu pourrais faire un code comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for(i=isupprimer+1,i<tableau.length;i++)
    {
    tableau[i-1] = tableau[i];
    }

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 19
    Par défaut
    quel est le role de la fonction pop? ça dégage le dernier élément?

    en tout cas c'est génial... ça marche...

  5. #5
    Membre éclairé Avatar de NeHuS
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 343
    Par défaut
    pas seulement c'est une fonction basique qui permet aussi de mettre a jour dynamiquement la taille du tableau.

    sa jumelle , la fonction push rajoute un element en queue et met a jour aussi la longueur du tab.

    Pourquoi ça n'existe pas en C ? marre des listes chainées

    the fonction pour les array c'est splice() avec ça tu peux "tout" faire

  6. #6
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    J'ai regardé mais splice ne modifie pas la taille du tableau, à moins que j'ai mal compris

  7. #7
    Membre éclairé Avatar de NeHuS
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 343
    Par défaut
    à moins que j'ai mal compris
    tout a fait tu as mal compris

    tu peux supprimer en passant alors deux parametres ( l'index ou tu veux commencer , et le rang ) ensuite ça recalcule automatiquement les index et la taille du tableau

    p.s >> c'est Shura le plus fort , Capricorne powa ^^

  8. #8
    Membre éclairé
    Inscrit en
    Mars 2004
    Messages
    247
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 247
    Par défaut
    bonjour,

    j'ai en quelque sorte le même problème je veux supprimer un élément du tableau mais ce coup ci dans un tableau associatif. et donc je ne sais pas comment faire et avec splice j'ai pas l'impression que ca soit faisable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (tab[obj.jobId] != null) {
    	obj.style.background = 'transparent';
            tab[obj.jobId] = null;
    }
    voila ce que je fait mais ca me va pas puisque apres il me renvoi des valeurs null au lieu de les avoir supprimé
    Ce que je veux c'est trouver l'element le mettre transparant et le retirer du tableau donc si vous pouvez m'aider merci

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

Discussions similaires

  1. [PHP 5.2] Supprimer des éléments de tableau
    Par gtraxx dans le forum Langage
    Réponses: 6
    Dernier message: 28/09/2011, 11h17
  2. Réponses: 9
    Dernier message: 12/08/2009, 15h05
  3. Supprimer les éléments diagonaux d'un tableau
    Par doubs dans le forum Pascal
    Réponses: 2
    Dernier message: 04/05/2006, 22h53
  4. Supprimé des éléments vide d'un tableau
    Par shinux2004 dans le forum Langage
    Réponses: 4
    Dernier message: 04/07/2005, 19h40
  5. Supprimer un élément d'un tableau
    Par CaptainChoc dans le forum Langage
    Réponses: 15
    Dernier message: 23/12/2002, 23h14

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