it-swarm.com.de

Wie kann ich eine Variable zu console.log hinzufügen?

Ich mache ein einfaches Spiel in JavaScript, aber in der Geschichte brauche ich es, um den Namen der Spieler zu nennen. also was ich bisher habe:

var name = Prompt("what is your name?");

console.log("story" name "story);

wie mache ich die zweite Zeile? oder es gibt einen anderen Weg, wie ich das tun könnte. Ist es möglich, 2 console.log(); in einer Zeile in der Konsole zu haben?

53

Verwenden Sie dann +, um Zeichenfolgen zu kombinieren:

console.log("story " + name + " story");
60
Joseph

console.log benötigt mehrere Argumente, verwenden Sie also einfach:

console.log("story", name, "story");

Wenn name eine object oder eine array ist, ist die Verwendung mehrerer Argumente besser als die Verkettung. Wenn Sie eine object oder array in einer Zeichenfolge verketten, protokollieren Sie einfach den Typ und nicht den Inhalt der Variablen.

Wenn name jedoch nur ein primitiver Typ ist, funktionieren mehrere Argumente genauso wie Verkettung.

59
Coin_op

Sie können eine andere Konsolenmethode verwenden:

var name = Prompt("what is your name?");
console.log(`story ${name} story`);
30
Sanjib Debnath

Wenn Sie ES6 verwenden, können Sie auch Folgendes tun:

var name = Prompt("what is your name?");
console.log(`story ${name} story`);

Hinweis: Sie müssen Backticks anstelle von "" oder "" verwenden, um dies zu tun.

17
EinArzt

Es gibt verschiedene Möglichkeiten, die Variable innerhalb einer Zeichenfolge zu trösten.

Methode 1 :

console.log("story", name, "story");

Vorteil: Wenn name ein JSON-Objekt ist, wird es nicht als "story" [object Object] "story" gedruckt.

Methode 2:

console.log("story " + name + " story");

Methode 3: Bei Verwendung von ES6 wie oben erwähnt

console.log(`story ${name} story`);

Vorteil: Kein Bedarf oder +

Methode 4:

console.log('story %s story',name);

Vorteil: Die Zeichenfolge wird lesbarer.

17
mannutech

Sie können mehrere Protokolle zur Protokollierung übergeben:

console.log("story", name, "story");
6
Lyn Headley

Es kommt darauf an, was Sie wollen.

console.log("story "+name+" story") wird verketten die Zeichenketten zusammen und drucken diese. Für mich nutze ich das, weil es einfacher ist zu sehen, was los ist.

Die Verwendung von console.log("story",name,"story") ähnelt der Verkettung, scheint jedoch ungefähr so ​​zu laufen:

 var text = ["story", name, "story"];
 console.log(text.join(" "));

Dadurch werden alle Elemente im Array durch ein Leerzeichen getrennt zusammengeschoben: .join(" ")

2
Bluedog111

Sowohl console.log("story" + name + "story") als auch console.log("story", name, "story") funktionieren genau wie in früheren Antworten erwähnt.

Ich werde immer noch vorschlagen, console.log("story", name, "story") zu haben, da "story" + objectVariable + "story", wenn versucht wird, den Inhalt des Objekts wie json object zu drucken, in String umgewandelt wird.

Dies hat folgende Ausgabe: "story" [object Object] "story".

Nur eine gute Praxis.

1
Sagar Kulkarni

Sie können auch den printf-Stil zum Formatieren von Argumenten verwenden. Es ist mindestens in Chrome, Firefox/Firebug und node.js verfügbar.

var name = Prompt("what is your name?");

console.log("story %s story", name);

Es unterstützt auch% d für die Formatierung von Zahlen

0
Ben Anderson