多行JavaScript文本

时间:2009-01-16 20:51:10

标签: javascript html newline

我有一长段HTML我想要一些javascript变量相等,并且为了可维护性我想用实际的换行符存储它而不是添加\ n(或者因为它只是省略换行符的HTML)。在Python中我会做类似的事情:

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

这将完美无缺。但是,我还没有看到在JavaScript中执行此操作的方法。

一些额外的信息:javascript位于外部.js文件中,而且片段确实很大(~6kb)。

3 个答案:

答案 0 :(得分:9)

在每行的末尾添加一个\。或者将它存储在带有display:none的div中,然后使用.html()来检索它

答案 1 :(得分:3)

JavaScript不支持多行字符串。

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

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

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

答案 2 :(得分: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>