J'ai un problème pour lire avec Javascript des "strings" de grande longueur (11000 caractères et plus)
Le string est obtenu par la lecture d'un noeud dans un fichier Google Earth (XML) représentant les points d'un parcours :
instruction : data = node.firstChild.nodeValue;
puis passage à une fonction : function Calcul(valeur, compteur)
Problème :
* IE8 lit complètement le string et le résultat est "conforme"
* FF3.5 lit partiellement le string (sans message d'erreur) et le résultat est incomplet (calcul sur une partie du trajet)..
Dans FF3.5 si je remplace dans l'exécutable data en copiant directement sa "vraie valeur" :
instruction data = "43.5678899 6.4784332 450.456... suite....." le résultat est correct.
En plus :
Avec les 2 navigateurs si je veux connaître la longueur du string avec :
alert('Longueur string : ' + data.lenght );
J'obtiens "undefined" dans les 2 cas soit en lisant la variable soit en lisant la "vraie valeur".
Je pensait utiliser ce test pour éviter les résultats erronés...
Pour terminer si je vais sur le site :
http://pagesperso-orange.fr/philippe.medan/jvs/jschaines1.htm#longueur
en faisant un copié / collé j'obtiens la longueur du string sans problème !
J'ai compris en cherchant sur le Web que la longueur d'un maximum string dépend de l'environnement mais cela n'explique pas les comportements ci-dessus.
Si quelqu'un peut m'expliquer comment m'en sortir (attention retraité autodidacte!)
Modifié par cyrano25550 (16 Jan 2010 - 23:00)
Le string est obtenu par la lecture d'un noeud dans un fichier Google Earth (XML) représentant les points d'un parcours :
instruction : data = node.firstChild.nodeValue;
puis passage à une fonction : function Calcul(valeur, compteur)
Problème :
* IE8 lit complètement le string et le résultat est "conforme"
* FF3.5 lit partiellement le string (sans message d'erreur) et le résultat est incomplet (calcul sur une partie du trajet)..
Dans FF3.5 si je remplace dans l'exécutable data en copiant directement sa "vraie valeur" :
instruction data = "43.5678899 6.4784332 450.456... suite....." le résultat est correct.
En plus :
Avec les 2 navigateurs si je veux connaître la longueur du string avec :
alert('Longueur string : ' + data.lenght );
J'obtiens "undefined" dans les 2 cas soit en lisant la variable soit en lisant la "vraie valeur".
Je pensait utiliser ce test pour éviter les résultats erronés...
Pour terminer si je vais sur le site :
http://pagesperso-orange.fr/philippe.medan/jvs/jschaines1.htm#longueur
en faisant un copié / collé j'obtiens la longueur du string sans problème !
J'ai compris en cherchant sur le Web que la longueur d'un maximum string dépend de l'environnement mais cela n'explique pas les comportements ci-dessus.
Si quelqu'un peut m'expliquer comment m'en sortir (attention retraité autodidacte!)
Modifié par cyrano25550 (16 Jan 2010 - 23:00)