我有一长段HTML我想要一些javascript变量相等,并且为了可维护性我想用实际的换行符存储它而不是添加\ n(或者因为它只是省略换行符的HTML)。在Python中我会做类似的事情:
largeString = """Hello
This is long!"""
这将完美无缺。但是,我还没有看到在JavaScript中执行此操作的方法。
一些额外的信息:javascript位于外部.js文件中,而且片段确实很大(~6kb)。
答案 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>