Array bidimensionnel et méthode splice

cs_chiktika Messages postés 58 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 23 janvier 2011 - 11 déc. 2008 à 11:42
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 - 11 déc. 2008 à 13:16
Bonjour,
j'ai l'habitude d'utiliser la fonction splice sur un array simple mais comment faire la même chose sur un array bidimensionnel ??
L'array en question est construit de cette façon :

monArray = new Array()

function remplir_tableau(p_X,p_Y, p_id) {
    this.horizontalement = p_X;
    this.verticalement = p_Y;
    this.id_icone = p_id;
}

monArray[i] = new remplir_tableau("contenu1", "contenu2", "contenu3");
et apres je peux exploiter le contenu du tableau en faisant par exemple
maVar1 = monArray[1].horizontalement;

Si quelqu'un pouvait m'aider,
Avec par avance mes remerciements.

5 réponses

Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
11 déc. 2008 à 12:04
bonjour,
ben... ça baigne ? non ?

monArray[0] = new remplir_tableau("a", "b", "c");
monArray[1] = new remplir_tableau("d", "e", "f");

alert(monArray[1].horizontalement);

parce que je ne vois pas de splice, ni array bidimentionnel ?

j'ai pas compris ?

Cordialement

          [mon Site] [M'écrire] Bul         
0
cs_chiktika Messages postés 58 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 23 janvier 2011
11 déc. 2008 à 12:24
Bonjour,
ok pardon je me suis mal exprimée alors.
Mon but est d'ajouter des éléments dans monArray à la position que je souhaite.
Je dis qu'il est bidimensionnel parce que je rentre 3 informations (une position horizontale, une verticale, et un identifiant ) par index du tableau, mais dis moi si je dis des bêtises.
Concrètement un exemple simplifie:
monArray  = ([position_x1, position_y1,id1], [position_x2, position_y2,id2], [position_x3, position_y3,id3]);
et admettons qu'au milieu du tableau  j'aurais souhaiter ajouter [position_x4, position_y4, id4]

Par exemple sur un array simple j'aurais fais : monArraySimple.splice(1,0,"position_x4");

En tout cas merci pour ta réponse j'espère avoir été plus explicite.
Cordialement.
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
11 déc. 2008 à 12:47
pas de raison...
si on est d'acoord avec splice ( lu chez selfhtml ) :
Ajoute un ou plusieurs nouveaux éléments dans un tableau et cela à un certain
endroit choisi. Écrase en le faisant des éléments existants !!!

monArray[0] = new remplir_tableau("a", "b", "c");
monArray[1] = new remplir_tableau("d", "e", "f");
monArray[2] = new remplir_tableau("g", "h", "i");
var t1=new remplir_tableau("u", "v", "w");
var t2=new remplir_tableau("x", "y", "z");
monArray.splice(1,2,t1,t2);
for ( var n=0;n<monArray.length;n++)
{    alert( monArray[n].horizontalement);    }

          [mon Site] [M'écrire] Bul         
0
cs_chiktika Messages postés 58 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 23 janvier 2011
11 déc. 2008 à 12:48
J'ai trouvé la solution :

monArray.splice(1,0,new remplir_tableau("position_x4", "position_y4", "id4"));

Merci pour ton attention.
Cordialement.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
11 déc. 2008 à 13:16
c'est vrai que je n'ai pas été "jusqu'au bout" et....
particulièrement obscur ! ( parfois je ne me comprend pas moi-même )
.splice(1,0,xxx ) insère comme tu l'entendais
nickel si ça baigne et merci d'avoir mis ce qu'il fallait
          [mon Site] [M'écrire] Bul         
0
Rejoignez-nous