web-dev-qa-db-ja.com

console.logに変数を追加するにはどうすればよいですか?

私はJavaScriptで簡単なゲームを作っていますが、ストーリーではプレイヤーの名前を言う必要があります。だから私がこれまでに持っているのは:

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

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

2行目はどうすればいいですか?または、これを行う別の方法があります。コンソールの1行に2 console.log();を含めることはできますか?

62

次に、+を使用して文字列を結合します。

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

console.logは複数の引数を取るため、次のように使用します。

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

nameobjectまたはarrayの場合、複数の引数を使用する方が連結よりも優れています。 objectまたはarrayを文字列に連結すると、変数の内容ではなく、単にタイプを記録します。

しかし、nameが単なるプリミティブ型の場合、複数の引数は連結と同じように機能します。

67
Coin_op

別のコンソールメソッドを使用できます。

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

文字列内の変数を除外する方法はいくつかあります。

方法1:

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

利点:名前がJSONオブジェクトの場合、"story" [object Object] "story"として出力されません

方法2:

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

方法3:上記のES6を使用する場合

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

利点:追加の必要なし、または+

方法4:

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

利点:文字列が読みやすくなります。

24
mannutech

ES6を使用する場合は、次のこともできます。

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

注:このようにするには、「」または「」の代わりに「」を使用する必要があります。

18
EinArzt

複数の引数をログに渡すことができます:

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

それはあなたが望むものに依存します。

console.log("story "+name+" story")連結 文字列をまとめて出力します。私にとっては、何が起こっているかを簡単に確認できるため、これを使用します。

console.log("story",name,"story")の使用は連結に似ていますが、次のように実行されるようです:

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

これは、スペースで区切られた配列内のすべてのアイテムを一緒にプッシュしています:.join(" ")

2
Bluedog111

console.log("story" + name + "story")console.log("story", name, "story")の両方は、以前の回答で述べたようにうまく機能します。

Jsonオブジェクトのようにオブジェクトのコンテンツを印刷しようとすると、"story" + objectVariable + "story"を持つことで文字列に変換されるため、console.log("story", name, "story")の習慣を付けることをお勧めします。

これには、"story" [object Object] "story"のような出力が含まれます。

良い習慣です。

1
Sagar Kulkarni

Printfスタイルのフォーマット引数を使用することもできます。少なくともChrome、Firefox/Firebug、node.jsで利用可能です。

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

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

また、数値の書式設定のために%dをサポートします

0
Ben Anderson