IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Traitement de chaine de caractère


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 110
    Points : 39
    Points
    39
    Par défaut Traitement de chaine de caractère
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    var i, j, k, tmp;
    var pdfNodesCopy = [];
    var metaNodesCopy = [];
    var pdfNodes = [];
    var metaNodes = [];
    var tmp;
    //clone arrays
    pdfNodesCopy = _pdfNodes.slice(0);
    metaNodesCopy = _metaNodes.slice(0);
    log("pdfNodesCopy.length" + pdfNodesCopy.length);
    log("metaNodesCopy.length" + metaNodesCopy.length);
    for (i = 0; i < _pdfNodes.length; i++) {
    		tmp = pdfNodesCopy[i].node.name.substring(0, pdfNodesCopy[i].posext);
    		pdfNodesCopy[i].node.name = tmp;
    		log("pdfNodesCopy[i].node.name" + pdfNodesCopy[i].node.name);
    		log("pdfNodesCopy[i].posext" + pdfNodesCopy[i].posext);
    		log("pdfNodesCopy[i].node.name.substr(0, pdfNodesCopy[i].posext)" + pdfNodesCopy[i].node.name.substr(0, pdfNodesCopy[i].posext));
    	}
    sortie à la 1ère itération de la boucle :

    22 juin 2007 11:12:31 CEST : pdfNodesCopy.length4
    22 juin 2007 11:12:31 CEST : metaNodesCopy.length4
    22 juin 2007 11:12:31 CEST : pdfNodesCopy[i].node.name0000006A.pdf
    22 juin 2007 11:12:31 CEST : pdfNodesCopy[i].posext8
    22 juin 2007 11:12:31 CEST : pdfNodesCopy[i].node.name.substr(0, pdfNodesCopy[i].posext)0000006A

    le lézard : pourquoi, dans la sortie, je récupère "0000006A" (nom de fichier sans l'extension) et qu'à la 3ème ligne de la sortie, je récupère "0000006A.pdf" (nom de fichier avec l'extension)

    Merci pour les explications, je suis perdu

  2. #2
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 110
    Points : 39
    Points
    39
    Par défaut
    à l'affichage de la valeur de tmp, j'ai bien le nom sans extension : 0000006A ... à croire que la variable pdfNodesCopy[i].node.name est en lecture seule . Ca vient d'où ce problème ?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 110
    Points : 39
    Points
    39
    Par défaut
    C'est bon j'ai trouvé l'erreur ! :sol:
    le tableau d'objet pdfNodesCopy a été mal alloué : la propriétés node dans pdfNodesCopy[i] n'a pas été clonée. On doit donc se taper à la main le "deepCopy" d'un objet ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Traitement de chaine de caractère
    Par abbd dans le forum Windows Forms
    Réponses: 1
    Dernier message: 12/02/2009, 15h53
  2. [RegEx] Traitement de chaines de caractères
    Par ctrl+z dans le forum Langage
    Réponses: 17
    Dernier message: 09/02/2009, 15h11
  3. [VB6]Traitement de chaine de caractère + conversion
    Par kboo dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 24/04/2006, 09h23
  4. [XSL] Optimisation d'un traitement de chaines de caractères
    Par mathieu dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 05/02/2006, 18h57
  5. Traitement de chaine de caractères
    Par lapartdombre dans le forum Langage
    Réponses: 9
    Dernier message: 03/02/2006, 09h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo