Javascript 使用逗号运算符添加值时,为什么console.log会在我的句子末尾添加空格?
这个问题几乎不值得问,但我在这里 参考上面的问题,下面是代码和输出Javascript 使用逗号运算符添加值时,为什么console.log会在我的句子末尾添加空格?,javascript,Javascript,这个问题几乎不值得问,但我在这里 参考上面的问题,下面是代码和输出 var端口=3000 console.log(“监听端口”,端口) 输出“监听端口3000” 注意这里的额外空间。为什么会发生这种情况?应该在做什么 console.log("Listening on port " + port) 正如(我认为)它可能将参数视为一个数组,从而将其与默认分隔符连接在一起,默认分隔符是一个空格,方法log将Javascript对象列表作为参数 console.log(obj1[,obj2,…,o
var端口=3000
console.log(“监听端口”,端口)
输出“监听端口3000”
注意这里的额外空间。为什么会发生这种情况?应该在做什么
console.log("Listening on port " + port)
正如(我认为)它可能将参数视为一个数组,从而将其与默认分隔符连接在一起,默认分隔符是一个空格,方法log
将Javascript对象列表作为参数
console.log(obj1[,obj2,…,objN)
在文档中你是对的,它说对象是附加在一起的,但它没有说分隔符是一个空格
obj1…objN要输出的JavaScript对象列表。字符串
这些对象中的每个对象的表示都附加在
列出订单并输出
根据大众需求,从评论中复制: 因为console.log就是这么做的。不妨问问为什么它会打印在控制台上,而不是把浴室漆成蓝色。(因为后者不是它所做的)。:)如果你不想要空间,请使用+运算符将字符串缝合在一起 原因很可能是,
console.log
,至少在图形客户机中,具有内联显示对象和数组的能力。这使得显示的结果实际上不是一个字符串,而是一个表,空间将每个单元格与另一个单元格分开。因此,每个参数都是单独显示的
此外,考虑到
console.log
用于调试,console.log(i,j,a[i][j],a[i][j]/2)
显示3724.712.35
与3724.712.35
和编写console.log(i+'+j+'+a[i][j]+'+a[i][j]/2)相比,并不是那么有用
很烦人。我年轻的时候就已经受够了Java的影响。去掉字符串中的空格,console.log
已经为你做了。因为这就是console.log
所做的。不妨问问为什么它会打印在控制台上,而不是把浴室涂成蓝色。(因为后者不是它所做的)(:)如果你不想要空格,就用+
操作符把字符串缝合在一起。@Amadan Lol很公平。这实际上就是我想要的答案。我理解、
和+
之间的区别,我不想知道如何更正它。只是为什么会这样。不过要感谢其他人。不太清楚。arGments是独立的,不是连接的。通过对象参数,console.log
可以显示对象的结构。显示的东西实际上不是一个字符串,而是更像一个表,你可以看到单元格之间的无形填充:)@Amadan如果你把两个注释组合在一起给出一个答案,我会很高兴看到除了这个,我一直在寻找答案。