问题是:
如何使用 JavaScript 方法将多行字符串像在 PHP 中一样存储到变量中?
如何使用 JavaScript 方法将多行字符串像在 PHP 中一样存储到变量中?
如果你所说的“多行字符串”指的是包含换行符的字符串,那么可以通过使用 \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
var es6string = `<div>
This is a string.
</div>`;
console.log(es6string);
根据之前的答案和不同的使用情况,这里有一个小例子:
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>
*/});
在Javascript中实现多行字符串的唯一方法是:
var multiline_string = 'line 1\
line 2\
line 3';
var myString = [
'One line',
'Another line'
].join('\n');
This works:
var htmlString = "<div>This is a string.</div>";
This fails:
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';