如何向console.log添加变量?

时间:2013-05-17 03:28:00

标签: javascript console.log

我正在用JavaScript制作一个简单的游戏,但在故事中我需要它来说出玩家的名字。所以到目前为止我所拥有的是:

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

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

我该如何做第二行?或者还有另一种方法可以做到这一点。是否可以在控制台中的1行上有2个console.log();

11 个答案:

答案 0 :(得分:65)

然后使用+组合字符串:

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

答案 1 :(得分:65)

console.log需要多个参数,所以只需使用:

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

如果名称objectarray,则使用多个参数优于连接。如果将objectarray连接到字符串中,则只需记录类型而不是变量的内容。

但如果 name 只是一个原始类型,那么多个参数的作用与连接相同。

答案 2 :(得分:36)

您可以使用其他控制台方法:

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

答案 3 :(得分:21)

有几种方法可以在字符串中整理变量。

方法1:

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

好处:如果name是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);

好处:字符串变得更易读。

答案 4 :(得分:18)

使用ES6时,您也可以这样做:

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

注意:你需要使用反引号``而不是""或者''这样做。

答案 5 :(得分:6)

您可以将多个参数传递给log:

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

答案 6 :(得分:2)

这取决于你想要什么。

console.log("story "+name+" story")  将concatenate字符串组合在一起并打印出来。对我来说,我使用它是因为它更容易看到发生了什么。

使用console.log("story",name,"story")类似于连接,但似乎运行如下:

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

这会将数组中的所有项目推到一起,用空格分隔:.join(" ")

答案 7 :(得分:1)

console.log("story" + name + "story")console.log("story", name, "story")工作正常,如前面的答案所述。

我仍然建议养成console.log("story", name, "story")的习惯,因为如果尝试打印对象内容(如json对象),"story" + objectVariable + "story"会将其转换为字符串。

这将输出如下:"story" [object Object] "story"

这是一个很好的做法。

答案 8 :(得分:0)

您还可以使用printf样式的格式设置参数。至少在Chrome,Firefox / Firebug和node.js中可用。

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

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

它还支持%d格式化数字

答案 9 :(得分:0)

答案 10 :(得分:-2)

您可以使用反斜杠将故事和玩家名称包含在一行中。

var name = prompt("你的名字是什么?"); 的console.log("故事" \名\"故事&#34);