我有一个包含新行的字符串。我想将它们转换为 HTML <br>
s,但我很难检测到它们。
想象这样一个 JavaScript 字符串集:
var foo = "Bob
is
cool";
它们是我需要检测的新行。他们没有使用 \n
特殊字符 - 它们只是普通格式。
最佳答案
它不起作用的原因是因为 javascript 字符串必须在下一个换行符之前终止(显然不是 \n
)。 \n
存在的原因是让开发人员可以轻松地将换行符 (ASCII: 10) 放入他们的字符串中。
当你有一个看起来像这样的字符串时:
//Note lack of terminating double quote
var foo = "Bob
此时您的代码将出现语法错误并停止运行。
如果您希望有一个跨越多行的字符串,您可以在终止该行之前插入一个反斜杠字符 '\
',如下所示:
//Perfectly valid code
var foo = "Bob \
is \
cool.";
但是,该字符串将不在字符串被分成单独的行的位置包含\n
字符。在字符串中插入换行符的唯一方法是插入一个值为 10 的字符,最简单的方法是 \n
转义字符。
var foo = "Bob\nis\ncool.";
关于带新行的 JavaScript 字符串 - 但不使用\n,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10154429/