Helfima Posted July 17, 2006 Share Posted July 17, 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 Link to comment Share on other sites More sharing options...
astero-H Posted July 19, 2006 Share Posted July 19, 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. Link to comment Share on other sites More sharing options...
Sentinel Posted July 19, 2006 Share Posted July 19, 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. Link to comment Share on other sites More sharing options...
Helfima Posted August 10, 2006 Author Share Posted August 10, 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. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.