JavaScript 字符串两两分割 javascript分隔两条语句

您所在的位置:网站首页 js使用什么来分隔两条语句 JavaScript 字符串两两分割 javascript分隔两条语句

JavaScript 字符串两两分割 javascript分隔两条语句

2024-06-08 07:52| 来源: 网络整理| 查看: 265

和其他许多编程语言一样,JavaScript使用分号(;)将语句分隔开,这对增强代码的可读性和整洁性是非常重要的,缺少(;)分隔符,一条语句的结束就成了下一条语句的开始,反之亦然。在JavaScript中,如果语句各自独占一行,通常可以省略语句之间的分号。关于JavaScript中可选分号的问题有几个细节需要注意。 如下代码,因为两条语句用两行书写,第一个分号是可以省略的:

a=3; b=4;

如果按照如下格式书写,第一个分号则不能省略:

a=3;b=4;

需要注意的是,JavaScript并不是在所有换行处都填补分号:只有在缺少了分号就无法正常解析代码的时候,JavaScript才会填补分号。如下代码:

var a a = 3 console.log(a)

JavaScript将其解析为:

var a;a=3;congsole.log(a);

JavaScript给第一行处添加了分号,因为如果没有分号,JavaScript就无法解析代码。第二个a可以单独当作一条语句,但JavaScript并没有给第二行结尾填补分号,因为它可以和第三行内容一起解析成‘a=3’。 这些语句的分隔规则会导致一些意想不到的情形,这段代码写成了两行,看起来是两条独立的语句:

var y=x+f (a+b).toString()

但第二行的圆括号却与第一行的f组成了一个函数调用,JavaScript会把这段代码看作:

var y=x+f(a+b).toString();

而这段代码的本意并不是这样,为了能让上述代码解析为两条不同的语句,必须手动填写行为的分号。 有些程序员喜欢保守的在语句前加一个分号,这样哪怕之前的语句被修改了、分号被误删了,当前语句还是会正确的解析:

var x=0 ;[x,x+1,x+2].forEach(console.log)

前面的分号保证了正确的语句解析 如果当前语句和下一行语句无法合并解析,JavaScript则在第一行后填补分号,这是通用规则。但有两个例外。 第一个例外,在涉及return、break和continue语句的场景中,如果这三个关键字后紧跟着换行,JavaScript则会在还行处填补分号。如下代码:

return true

JavaScript会解析成:

return;true;

而代码的本意是:

return true;

也就是说,在return、break和continue随后的表达式之间不能有换行。如果添加了换行,程序则只有在及特殊的情况下才会报错,而且程序的调试非常不方便。 第二个例外,在涉及‘++’和‘–’运算符的时候,这些运算符可以作为表达式的前缀,也可以当作表达式的后缀。如果将其用作后缀表达式,它和表达式应当在同一行,否则,行尾将填补分号,同时‘++’或‘–’将会作为下一行代码的前缀操作符并与之一起解析,如下代码:

x ++ y

这段代码将解析为:

x;++y;

而不是:

x++;y;



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3