多行JavaScript文本

4

我有一段较长的HTML代码片段,我希望某些JavaScript变量与之相等。为了便于维护,我想要将其实际换行存储,而不是添加\n(或在HTML中省略换行符)。在Python中,我会这样做:

largeString = """Hello
This is long!"""

这种方式完全可行。然而,我还没有看到在JavaScript中实现这种方式的方法。

一些额外的信息:JavaScript位于外部.js文件中,而且代码片段非常庞大(约6kb)。

3个回答

9

在每行结尾处加上 \。或者将其存储在 display:none 的 div 中,然后使用 .html() 方法检索它。


以下是使用反斜杠并存储在div中的示例: http://forums.devx.com/showthread.php?t=154826 - arena-ru

3

JavaScript不支持同样的方式使用多行字符串。

您可以使用\来转义脚本中的换行符,但这仅适用于开发人员阅读,因为它不会保留在字符串中(大多数验证器将抛出错误)。要在字符串中保留换行符,仍需要使用\n

如果您想要可读性,可以将它们组合在一起:

var largeString = '"Hello\n\
This is long!"';

0

这将在Firefox、IE、Safari和Chrome中运行:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<div class="crazy_idea" largeString='Hello
This is long!'
></div>
<script type="text/javascript">
    alert($(".crazy_idea").attr("largeString"));
</script>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接