T.T*_*.T. 187 javascript line-breaks
JavaScript中是否有一个字符可以分解一行代码,这样即使在新行上也可以将其视为连续代码?
就像是....
1. alert ( "Please Select file 2. \ to delete" );
Mic*_*ren 260
在您的示例中,您可以将字符串分成两部分:
alert ( "Please Select file"
+ " to delete");
Run Code Online (Sandbox Code Playgroud)
或者,当它是一个字符串时,就像你的情况一样,你可以使用@Gumbo建议的反斜杠:
alert ( "Please Select file\
to delete");
Run Code Online (Sandbox Code Playgroud)
请注意,这种反斜杠方法不一定是首选方法,并且可能不受普遍支持(我无法在此找到硬数据).它不符合ECMA 5.1规范.
使用其他代码(不在引号中)时,会忽略换行符,并且完全可以接受.例如:
if(SuperLongConditionWhyIsThisSoLong
&& SuperLongConditionOnAnotherLine
&& SuperLongConditionOnThirdLineSheesh)
{
// launch_missiles();
}
Run Code Online (Sandbox Code Playgroud)
Gum*_*mbo 41
将反斜杠放在行尾:
alert("Please Select file\
to delete");
Run Code Online (Sandbox Code Playgroud)
编辑 我必须注意,这不是ECMAScript字符串的一部分,因为根本不允许行终止字符:
" LineTerminator "字符不能出现在字符串文字中,即使前面有反斜杠也是如此
\.使行终止符字符成为字符串文字的字符串值的一部分的正确方法是使用转义序列,如\n或\u000A.
因此使用字符串连接是更好的选择.
更新2015-01-05 ECMAScript5中的字符串文字允许提到的语法:
除了作为生成空字符序列的LineContinuation的一部分之外,行终止符字符不能出现在字符串文字中.使行终止符字符成为字符串文字的String值的一部分的正确方法是使用转义序列,如
\n或\u000A.
Ori*_*iol 29
ECMAScript 6引入了模板字符串:
模板字符串是允许嵌入表达式的字符串文字.您可以使用多行字符串和字符串插值功能.
例如,
alert(`Please Select file
to delete`);
Run Code Online (Sandbox Code Playgroud)
会警觉
Please Select file
to delete
Run Code Online (Sandbox Code Playgroud)
将字符串分成两部分
alert ("Please select file " +
"to delete");
Run Code Online (Sandbox Code Playgroud)
值得注意的是。尝试过:
alert("Some \
string \
wrapped \
across \
mutliples lines.")
Run Code Online (Sandbox Code Playgroud)
这奏效了。然而,意外的是,最后一个反斜杠后面有一个空格字符(所有其他反斜杠都在行尾)。这导致了 javascript 的错误!不过,删除这个空格可以修复错误。
这是使用 Cordova 的 Android ADT。
| 归档时间: |
|
| 查看次数: |
246676 次 |
| 最近记录: |