我试图得到一个字符串,像下面这样:[==== ]
为此,我使用以下代码:
'[' + '='.repeat (4) + ' '.repeat (4) + ']'
但我只得到[==== ]
;也就是说,所有的空间都被压缩成一个。我在google chrome控制台中检查了这段代码,确实' '.repeat(25)
只产生一个空格。如何使repeat
真正产生多个空间?
我在the manual中没有找到任何相关内容。
我试图得到一个字符串,像下面这样:[==== ]
为此,我使用以下代码:
'[' + '='.repeat (4) + ' '.repeat (4) + ']'
但我只得到[==== ]
;也就是说,所有的空间都被压缩成一个。我在google chrome控制台中检查了这段代码,确实' '.repeat(25)
只产生一个空格。如何使repeat
真正产生多个空间?
我在the manual中没有找到任何相关内容。
2条答案
按热度按时间qojgxg4l1#
这是Chrome开发者工具的问题。空格 * 可以 * 重复,但它们显示为一个字符,这是错误的:
你可以这样检查结果:
下面是Node.js REPL的一个例子:
总之,您的代码确实可以工作,但Google Chrome的控制台无法正确显示结果。
如果你正在讨论在HTML元素中显示没有等宽字体的元素,使用@Jamiec的解决方案,使用non-breaking spaces:
作为@James Thorpe,这 * 是 * 一个bug in Chrome得到修复。我们可能会在更新浏览器版本时得到修复。
lnlaulya2#
浏览器折叠多个空格,为了强制它不可以使用non-breaking spaces。
因此,在您的情况下,您可以使用
(Its一个调试控制台 * 不应该 * 折叠空白,这是有争议的,但在您的情况下,它似乎确实如此)