JavaScript 中是否有一个字符可以分解一行代码,以便尽管在新行上仍被读取为连续的?
就像是....
1. alert ( "请选择文件 2.\删除");
JavaScript 中是否有一个字符可以分解一行代码,以便尽管在新行上仍被读取为连续的?
就像是....
1. alert ( "请选择文件 2.\删除");
在您的示例中,您可以将字符串分成两部分:
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
or\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");
有趣的是要注意。尝试过:
alert("Some \
string \
wrapped \
across \
mutliples lines.")
这奏效了。然而,偶然地!在最后一个反斜杠后面有一个空格字符(所有其他反斜杠都在行尾)。这导致了 javascript 中的错误!不过,删除此空间修复了错误。
这是使用 Cordova 的 ADT for Android。