Helfima Posté(e) le 17 juillet 2006 Partager Posté(e) le 17 juillet 2006 Salut, comme ca commence sérieusement à me gonfler, j'ai cherché sur le net pendant 2h plus 2h dans mes bouquins j'ai rien trouvé pour lister mon tableau. évidemment pour éviter les problèmes de version je voudrai utiliser une boucle for($i=0;$i<.....) ou while. bien sure j'ai utilisé la boucle for($key in $tab) qui fonctionne chez moi mais à mon taf la version ne fonctionne pas. /********************************************************** * objet village **********************************************************/ function clVillage(id_village, id_joueur, nom_village, status_village, x, y, habitant, zoom){ this.ID_VILLAGE = id_village; this.ID_JOUEUR = id_joueur; this.NOM_VILLAGE = nom_village; this.STATUS_VILLAGE = status_village; this.X = x; this.Y = y; this.HABITANTS = habitant; }// village function creationVillages(){ var textVillages = ""; for(var $key in villages){ text = villages[$key].ID_VILLAGE; ........... textVillages += text; }// for affichage("villages", textVillages); } exemple de mon tableau villages[63765] = new clVillage(....); villages[69398] = new clVillage(....); villages[79140] = new clVillage(....); villages[79652] = new clVillage(....); villages[88316] = new clVillage(....); villages[90872] = new clVillage(....); villages[94517] = new clVillage(....); comment faire une boucle de ce bout de tableau? avec un while ou un for simple (sans le in) à bientot Lien vers le commentaire Partager sur d’autres sites More sharing options...
astero-H Posté(e) le 19 juillet 2006 Partager Posté(e) le 19 juillet 2006 for (var i = 0; i<ton_tableau.length; i++) ou alors : var val = ton_tableau.shift(); while (val) { // traitement de val val = ton_tableau.shift(); } mais là tu vides le tableaux Après c'est une histoire de version des navigateurs, je pense que la première solution marchera même sur les plus anciens. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sentinel Posté(e) le 19 juillet 2006 Partager Posté(e) le 19 juillet 2006 Visiblement, ton problème est que les numéros d'index ne se suivent pas, dans ton tableau. Donc, pas de for(i)... La méthode indiquée par astero-H, utilisant shift(), devrait fonctionner, mais effectivement tu vides ton tableau lors de sa lecture, ce qui peut ou non être un problème, à toi de voir. PS : Voir la section 2.2 des Règles de la section, pour l'utilisation de tags dans les tites des posts : c'est plus lisible. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Helfima Posté(e) le 10 août 2006 Auteur Partager Posté(e) le 10 août 2006 salut, merci pour les réponses. en fait j'ai cru à un problème mais en fait c'est juste mon fichier javascript qui ne s'était pas mis à jour. donc la fonction for(in) marche bien. désolé pour le dérangement. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.