[JS & foreach ]

[JS & foreach ] - Programmation

Marsh Posté le 23-07-2002 à 16:38:39    

salut,
j'aimerais savoir s'il existe en javascript un truc similaire à foreach, pour pouvoir parcourir TOUTES les propriétés/données d'un OBJET ! :)
merci si vous savez ;)

Reply

Marsh Posté le 23-07-2002 à 16:38:39   

Reply

Marsh Posté le 23-07-2002 à 16:42:11    

var n = document.getElementById('tabalise';);
for (i in n)
{
  // i est le nom de la propriété
  alert(i);
  // un eval pour chopper sa valeur
  alert(eval('n.' + i));
}
 
au fait ton foreach c'est dans quel langage ?

Reply

Marsh Posté le 23-07-2002 à 16:51:45    

le foreach c dans php ou d'autres langages du style vb etc...
par contre dans mon cas c pas une balise! donc le getElementById ne me sert pas, c vraiment un objet, ou en tout cas une structure de données pouvant contenir des tableaux de tableaux de tableaux... c pour ça que j'aimerais quelque chose de générique ou une façon potable de reconnaitre une structure!
ya pas ? :'(

Reply

Marsh Posté le 23-07-2002 à 16:53:02    

détaille ... que ce soit une balise ou non, getElementById() renvoie un objet, complètement identique à ce que renvoie new Object().

Reply

Marsh Posté le 23-07-2002 à 17:03:29    

je construis un objet à partir de données xml arrivantes,
c pas fastoche à expliquer, mais je construis un objet et j'aimerais parcourir toutes les variables de cet objet ... le bleme c'est que quand je fais:
 
monobjet.length ça me dit que c pas bien, donc je peux pas le parcourir!

Reply

Marsh Posté le 23-07-2002 à 17:10:43    

k666 a écrit a écrit :

monobjet.length


.length, c'est uniquement pour les tableaux / les collections (baliseHtml.attributes.length).
 
for (... in ...) marchera sur n'importe quel objet.

Reply

Marsh Posté le 23-07-2002 à 17:22:39    

nickelm ça marche :)
merci! par contre ya une fonction qui s'est collée dans mon truc je sais pas d'où elle sort :s mais c pas grave  :??:

Reply

Marsh Posté le 23-07-2002 à 17:29:08    

k666 a écrit a écrit :

ya une fonction qui s'est collée dans mon truc


:heink: :??:

Reply

Marsh Posté le 23-07-2002 à 17:33:36    

toXMLRPC
function(){ var wo = this.valueOf(); if(wo.toXMLRPC == this.toXMLRPC){ retstr = ""; for(prop in this){ if(typeof wo[prop] != "function" ){ retstr += "" + prop + "" + XMLRPC.getXML(wo[prop]) + ""; } } retstr += ""; return retstr; } else{ return wo.toXMLRPC(); } }
 
toolkitDocsUrl
http://xmlrpc.usefulinc.com/php.html
 
toolkitName
XML-RPC for PHP
 
toolkitVersion
1.02
 
toolkitOperatingSystem
Apache/1.3.24 (Unix) mod_perl/1.27 DAV/1.0.3 PHP/4.2.1

Reply

Marsh Posté le 23-07-2002 à 17:34:27    

je sais pas ce qu'elle fout là cette fonction car en principe je ne reçois que des données et les reconvertit en type JS

Reply

Marsh Posté le 23-07-2002 à 17:34:27   

Reply

Marsh Posté le 23-07-2002 à 17:35:30    

et où est le problème ? une fonction est un attribut au même titre qu'une string, un nombre, un tableau ... là apparemment c'est ton framework qui la rajoute.

Reply

Marsh Posté le 23-07-2002 à 17:45:33    

c normal qu'il considère tout comme des trings ? même la fonction etc... ? je vais tenter avec des tableaux codés en dur mais .... c vrai ?
 
 
toXMLRPC ( string )
function(){ var wo = this.valueOf(); if(wo.toXMLRPC == this.toXMLRPC){ retstr = ""; for(prop in this){ if(typeof wo[prop] != "function" ){ retstr += "" + prop + "" + XMLRPC.getXML(wo[prop]) + ""; } } retstr += ""; return retstr; } else{ return wo.toXMLRPC(); } }
 
toolkitDocsUrl ( string )
http://xmlrpc.usefulinc.com/php.html
 
toolkitName ( string )
XML-RPC for PHP
 
toolkitVersion ( string )
1.02
 
toolkitOperatingSystem ( string )
Apache/1.3.24 (Unix) mod_perl/1.27 DAV/1.0.3 PHP/4.2.1


Message édité par k666 le 23-07-2002 à 17:45:49
Reply

Marsh Posté le 23-07-2002 à 17:55:05    

>> c normal qu'il considère tout comme des trings ? même la fonction etc... ?  
 
non.
 
>> je vais tenter avec des tableaux codés en dur mais .... c vrai ?
 
pas compris.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed