Вопрос в том:
Каков метод 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
Основываясь на предыдущих ответах и различных вариантах использования, вот небольшой пример:
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 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';