Johannes: Variablen in Strings - kurze Frage

Hallo liebes Forum,

ich habe eine Frage zu Javascript:

in anderen Programmiersprachen kann ich in einem String zum Beispiel schreiben:

"bla bla %s bla bla" % (var1)

und für %s wird var1 eingefügt. Gibt es das in Javascript auch?

  1. Gibt es das in Javascript auch?

    Ja.

    erstens="ein";
    zweitens="Dies ist "+erstens+"String.";

    Herzlich, twb

    1. Hi,

      erstens="ein";
      zweitens="Dies ist "+erstens+"String.";

      nun, das ist nicht das gleiche wie sprintf, denn "erstens" muss definiert sein _bevor_ Du es einsetzen kannst. Ich denke er muss sich mit replace etwa sowas basteln (wobei das hier natuerlich nur ein Test ist):

      var str =  "das ist ein %s in der %s";
      function sprintf() {
          var str =  arguments[0];
          for (var i = 1; i < arguments.length; i++) {
              str =  str.replace(/%s/,arguments[i]);
          }
          return str;
      }
      var out =  sprintf(str,"test","Tasse");
      alert(out);

      Gruesse, Joachim

      --
      Am Ende wird alles gut.
      1. nun, das ist nicht das gleiche wie sprintf, denn "erstens" muss definiert sein _bevor_ Du es einsetzen kannst.

        Richtig. Und ist mit einer Initialzeile var erstens; auch gleich erledigt.
        Herzlich, twb

        1. Hi,

          Richtig. Und ist mit einer Initialzeile var erstens; auch gleich erledigt.

          Das ist nicht die Arbeitsweise von z.B. sprintf in php (und sowas suchte er). Dort kannst Du mit Platzhaltern arbeiten, die Du erst bei der Ausgabe mit Werten fuellst.

          Gruesse, Joachim

          --
          Am Ende wird alles gut.
      2. jo danke für die antwort.

        sowas hatte ich gemeint. also muß man es sich selber basteln, aber diese schreibweise erspart mir eine menge arbeit.