Partage
  • Partager sur Facebook
  • Partager sur Twitter

fonction Supprimer caractère invisible

    20 novembre 2008 à 17:56:17

    Bonsoir à tous !

    Donc mon problème est le suivant...

    J'ai un nombre sous forme de chaine de caractère que je dois traiter en javascript.

    Ce nombre est du type "1 000.14".

    Pour pouvoir le transformer en décimal et faire des calculs avec, je dois d'abord supprimer les espaces blancs entre les chiffres.
    Seulement, j'ai essayé de créer une fonction avec replace mais ça ne fonctionne pas ...

    le code ascii du caractère est 160 ( retrouvé grâce à la fonction php ord() ).

    Quelqu'un a une idée ?? ça fait 2 heures que je galère dessus, c'est pour mon boulot et mon patron me fout la pression... Il veut absolument que les nombres soient afficher avec des espaces entre les milliers ...

    Merci d'avance !
    • Partager sur Facebook
    • Partager sur Twitter
      20 novembre 2008 à 20:51:10

      <!doctype blablabla>
      <html blablabla>
      <head>
      <title>aaa</title>
      <script type="text/javascript">
      function ftw()
      {
      var truk2='';
      var truk=prompt('truk?');
      while(truk2!=truk)
      {
      truk2=truk;
      truk=truk.replace(String.fromCharCode(160),'');
      truk=truk.replace(' ','');
      }
      alert(truk);
      }
      </script>
      </head>
      <body onload="ftw();" style="color:yellow">
      <p id="aze">
      zadwfes
      </p>
      </body>
      </html>
      



      je ne voit pas le difficulté...
      j'ais tésté et c'est bien un espace...
      bref dans le doute j'applique les 2 ... et ca marche...
      • Partager sur Facebook
      • Partager sur Twitter
        20 novembre 2008 à 23:17:27

        !!!!!!!!
        J'avais fais la même chose pour truk=truk.replace(' ','');

        Sinon tu m'auras appris un truc, j'avais jamais fais gaffe que la fonction replace ne remplace que la première occurrence trouvée, j'expérimente vraiment javascript que depuis peu.

        Et donc en fait ça ne marchait pas parce que je testais sur une page généré par php mais pas dans la bonne condition, les codes étant quasi identique selon les conditions. C'est dur les fins de journée ...

        En tout cas, ton code est pas mal du tout :), concis, ça pourra resservir ! Merci de ta réponse, cio !
        • Partager sur Facebook
        • Partager sur Twitter
          21 novembre 2008 à 10:05:34

          de rien... et moi aussi j'ai appris que ca prenait que le premier en cherhant a te faire la fonction :p
          et sinon mon code il est un peu moche... en théorie au lien de
          while(truk2==truk)
          

          on de vrait avoir une regex qui regarde s'il y a un espace... mais comme je ger pas les regex je me débrouille pour passer a travers :-°
          • Partager sur Facebook
          • Partager sur Twitter
            21 novembre 2008 à 10:51:31

            Bouuaarff, il est bien comme ça le code, je sais pas si faire un regex pour rechercher dans la chaine de caractère un espace est plus rapide que de tester si deux chaînes sont identiques ... en théorie oui parce que js ne traîte qu'une seule chaine avec regex ... à confirmer.

            Citation : xavierm02

            de rien... et moi aussi j'ai appris que ca prenait que le premier en cherhant a te faire la fonction :p


            ^^ comme quoi !
            • Partager sur Facebook
            • Partager sur Twitter
              21 novembre 2008 à 12:21:18

              truk=truk.replace(/ /g,'');
              


              tout simplement ^^
              • Partager sur Facebook
              • Partager sur Twitter

              fonction Supprimer caractère invisible

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown