Chaine de caractere et javascript

Bonjour,

j'ai une fonction : affiche(text1,text2,text3)
qui necessite 3 attributs pour fonctionner. Si je fais affiche('droite', 'rouge', 'printemps') la fonction marche mais si je fais :
var temp=" 'droite', 'rouge', 'printemps'";
affiche(temp)
cela ne marche pas, je vois pas trop comment ecrire mes " et ' car je pense que le problème vient de là.
D'avance merci pour votre aide.

8 réponses

  1. merci bcp, je crois que je vais mettre un refresh sur ma page html, ce sera moche mais bon ....
    Bonne soirée
    1
    1. Alors utilise plutôt JSON, c'est un format faciliter le transfert de données.
      0
      1. ben le probléme c'est que mes variables reviennent d'une page php lancé par un code ajax et cette page ne me renvoie qu'une chaine de caractère contenant les 3 variables déjà concaténées...
        1
        1. Utilise les tableaux, comme je te l'ai montré.

          Sauf qu'au lieu de « variable1 variable2 variable3 », tu auras « variable[0] variable[1] variable[2] ».

          Tu peux facilement exploiter les tableaux avec une boucle « for(i in tableau) { ... } » où i correspond au numéro de l'entrée.
          1
          1. ben disons que j'ai
            var temp=" 'droite', 'rouge', 'printemps' ";
            il faudrait que j'arrive à avoir :
            var temp1='droite';
            var temp2='rouge';
            var temp3='printemp';

            En tout cas merci de m'aider
            1
            1. Que souhaites-tu faire ?

              Si tu ne connais pas par avance le nombre d'argument, tu peux utiliser un array.
              Par exemple :

              function afficher(chaines) {
                  for(i in chaines) {
                      var chaine = chaines[i];
                      /* Traitement pour chaque chaine */
                  }
              }
              
              var chaines = Array(
                  'Chaine 1',
                  'Chaine 2',
                  /* ... */
              );
              
              afficher(chaines);
              1
              1. Merci beaucoup pour ta réponse. Du coup je peux faire couper la chaine après chaque quote par exemple?
                1
                1. Salut,

                  var temp=" 'droite', 'rouge', 'printemps' ";
                  affiche(temp);


                  Tu appelles la fonction afficher() avec un seul argument qui est une chaine de caractères. Ce n'est donc pas valide.

                  Il n'y a pas de méthode permettant de raccourcir, tu es obligé d'écrire les trois arguments séparés par une virgule lorsque tu appelles de la fonction.
                  1