一尘不染

为什么要避免在JavaScript中使用递增(“ ++”)和递减(“-”)运算符?

javascript

jslint工具的提示之一是:

++和-

已知++(递增)和-(递减)运算符会通过鼓励过多的技巧而导致不良代码。在支持病毒和其他安全威胁方面,它们仅次于错误的体系结构。有一个plusplus选项禁止使用这些运算符。

我知道像这样的PHP构造$foo[$bar++]可能很容易导致一次错误的错误,但是我找不到比a while( a < 10 ) do { /* foo */ a++; }或更好的控制循环的方法for (var i=0; i<10; i++) { /* foo */ }

jslint是否突出显示它们,是因为有些相似的语言缺少“++”和“--”语法或以不同的方式处理它,还是有其他理由避免我可能会丢失“++”和“ --”?


阅读 339

收藏
2020-04-25

共1个答案

一尘不染

我的观点是始终单独使用++和-,如下所示:

i++;
array[i] = foo;

代替

array[++i] = foo;

除此之外,其他任何事情都可能使某些程序员感到困惑,在我看来这是不值得的。For循环是一个例外,因为增量运算符的使用是惯用的,因此始终是清楚的。

2020-04-25