在我的公司项目中,JavaScript中的花括号在“if”条件之后总是在同一行。 在下一个例子中考虑多线条件,你认为缩进行“list [i] .Position ++;”看起来不错?对我来说看起来有点奇怪,因为它在视觉上与条件线具有相同的缩进。
for (var i = 0; i < list.length; i++) {
if (list[i].Position < previousPosition &&
list[i].Position >= savedPosition) {
list[i].Position++;
}
}
您是否会使用此代码处理编码风格?
答案 0 :(得分:2)
缩进是无关紧要的,但我会读取list.length一次,而不是每次迭代。
for (var i = 0,L=list.length; i < L; i++)
答案 1 :(得分:1)
是的,我会对此做点什么。我不会说问题是关于括号。 多线条件难以阅读,我建议将其用于单独的功能。
function isRightPosition(position, previous, saved) {
return position < previous
&& position >= saved;
}
for (var i = 0; i < list.length; i++) {
if(isRightPosition(list[i].Position, previous, saved))
list[i].Position++;
}
你也可以进一步注意if的主体,以防止与病情混淆。
for (var i = 0; i < list.length; i++) {
if (list[i].Position < previousPosition &&
list[i].Position >= savedPosition) {
list[i].Position++;
}
}
你也可以移动&符号,这有时会有所帮助:
for (var i = 0; i < list.length; i++) {
if (list[i].Position < previousPosition
&& list[i].Position >= savedPosition) {
list[i].Position++;
}
}
但这都是个人观点。做你认为最好(或一致)的事情。