Checker_Bobby
Messages postés12Date d'inscriptionjeudi 22 avril 2004StatutMembreDernière intervention21 septembre 2005
-
21 sept. 2005 à 09:08
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 2013
-
21 sept. 2005 à 10:29
Bonjour,
je savais pas trop ou mettre la remarque suivante... J'ai constater un truc "bizarre" avec JavaScript qui m'a bien tordu l'esprit avant que je ne trouve cette "erreur". Je n'ai aucune explication, juste quelques suppositions, et si quelqu'un pouvait m'eclairer se serait sympa :D
Je créé un tableau associatif, avec pour clé des codes sur 4 caracteres (qui sont des chiffres). Or si le code commence par un '0' (significatif, car c'est le caractere 0) l'objet array se met à me dire que la taille du tableau est de 0!
exemple:
<!---
var tab= new Array();
tab['0101'] = 2;
tab['0103'] = 3;
alert("longueur: "+tab.length);
for(code in tab)
alert(code + "=>" + tab[code]);
--->
Bien qu'il affirme qu'il y'ai 0 éléments, il peut en trouver 2 quand même...
Un dernier exemple pour la route:
<!---
var tab= new Array();
tab['0101'] = 2;
tab['7103'] = 3;
La il me dit qu'il y'a 7104 élèments, mais n'en trouve bien que 2 dans le 'for in' ...
Mon explication: je pense que JavaScript a tendance à melanger un peu les entiers, et les chaines de caracteres qui "ressemblent" à des entiers... a cause du typage faible. PHP m'a deja posé des problème avec ces codes, mais JavaScript détient le record! Le seul moyen que j'ai trouvé pour avoir la taille réelle du tableau est de compter les élèments un par un...
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 21 sept. 2005 à 09:47
bonjour,
lu sur selfhtml :
tableaux associatifs
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Les tableaux associatifs sont des tableaux dans lesquels l'accès
aux différents éléments se fait à l'aide d'une chaîne de caractères.
La chaîne de caractères est considérée comme clé pour l'accès.
Tous les objets JavaScript, qui possèdent une propriété name ou id,
comme par exemple les objets forms ou bien elements, représentent
pour JavaScript des tableaux associatifs.
Les tableaux associatifs sont particulièrement indiqués en relation
avec des tableaux à plusieurs dimensions. Ils permettent, indépendamment
de la position, de rechercher la valeur d'un élément. L'inconvénient en est que les méthodes de l'objet Array ne lui sont pas applicables. De même les
tableaux associatifs ne connaissent-ils pas la propriété length.
Les éléments d'un tableau associatif ne peuvent toujours être adressés
qu'avec leur nom ou par une boucle for-in.
donc, tout est normal ( et pas seulement si la clé
commence pas 0 ). @+
Checker_Bobby
Messages postés12Date d'inscriptionjeudi 22 avril 2004StatutMembreDernière intervention21 septembre 2005 21 sept. 2005 à 09:10
Houla... Je suis désolé, je m'appercois que ma mise en page est vraiment foirée !
Si vous savez comment y modifier dites le moi, c'est limite illisible!