在您的示例中,您可以将字符串分成两部分:
alert ( "Please Select file" + " to delete");
或者,当它是一个字符串时,就像你的情况一样,你可以使用@Gumbo建议的反斜杠:
alert ( "Please Select file\ to delete");
请注意,这种反斜杠方法不一定是首选方法,并且可能不受普遍支持(我无法在此找到硬数据).它不符合ECMA 5.1规范.
使用其他代码(不在引号中)时,会忽略换行符,并且完全可以接受.例如:
if(SuperLongConditionWhyIsThisSoLong && SuperLongConditionOnAnotherLine && SuperLongConditionOnThirdLineSheesh) { // launch_missiles(); }
将反斜杠放在行尾:
alert("Please Select file\ to delete");
编辑 我必须注意,这不是ECMAScript字符串的一部分,因为根本不允许行终止字符:
" LineTerminator "字符不能出现在字符串文字中,即使前面有反斜杠也是如此
\
.使行终止符字符成为字符串文字的字符串值的一部分的正确方法是使用转义序列,如\n
或\u000A
.
因此使用字符串连接是更好的选择.
更新2015-01-05 ECMAScript5中的字符串文字允许提到的语法:
除了作为生成空字符序列的LineContinuation的一部分之外,行终止符字符不能出现在字符串文字中.使行终止符字符成为字符串文字的String值的一部分的正确方法是使用转义序列,如
\n
或\u000A
.
ECMAScript 6引入了模板字符串:
模板字符串是允许嵌入表达式的字符串文字.您可以使用多行字符串和字符串插值功能.
例如,
alert(`Please Select file
to delete`);
会警觉
Please Select file
to delete
将字符串分成两部分
alert ("Please select file " + "to delete");