JavaScript多行字符串

时间:2011-03-22 13:00:08

标签: javascript string multiline heredoc

问题是:

将多行字符串存储到变量中的JavaScript方法是什么,就像在PHP中一样?

6 个答案:

答案 0 :(得分:21)

如果“多行字符串”是指包含换行符的字符串,则可以使用\n(换行)转义它们来编写它们:

var multilineString = 'Line 1\nLine 2';
alert(multilineString);
// Line 1
// Line 2

如果你的意思是,如何在多行代码中写一个字符串,那么你可以通过在行尾添加\反斜杠来继续字符串:

var multilineString = 'Line \
1\nLine 2';
alert(multilineString);
// Line 1
// Line 2

答案 1 :(得分:11)

var es6string = `<div>
    This is a string.
</div>`;

console.log(es6string);

答案 2 :(得分:7)

根据以前的答案和不同的用例,这里有一个小例子:

https://gist.github.com/lavoiesl/5880516 别忘了使用/ *!避免在缩小中删除评论

function extractFuncCommentString(func) {
  var matches = func.toString().match(/function\s*\(\)\s*\{\s*\/\*\!?\s*([\s\S]+?)\s*\*\/\s*\}/);
  if (!matches) return false;

  return matches[1];
}

var myString = extractFuncCommentString(function(){/*!
  <p>
    foo bar
  </p>
*/});

答案 3 :(得分:5)

只有(?)方式在Javascript中使用多行字符串:

var multiline_string = 'line 1\
line 2\
line 3';

答案 4 :(得分:1)

man -s9f atomic_bits

答案 5 :(得分:1)

这有效:

var htmlString = "<div>This is a string.</div>";

此操作失败:

var htmlSTring = "<div>
  This is a string.
</div>";

有时这是可取的。

添加反斜杠以使其正常工作:

var htmlSTring = "<div>\
  This is a string.\
</div>";

或者这样

var htmlSTring  = 'This is\n' +
'a multiline\n' + 
'string';