fro*_*die 16
如果我提出相反的建议,任何人都会介意......?
请尽可能使用增量(++)和减量( - )运算符.更直截了当.(这就是他们的目的.)
Crockford等人的原因.不鼓励使用++/ --是否会引入副作用.实际上没有理由使用i+=1;而不是i++;因为两者都是单个语句,但是有很多理由让语句只做一件事并且++很容易违反该规则.
劝阻使用的++手段,我们没有保持之间的区别i++,并++i在我们的头脑.这意味着我们不太可能尝试以巧妙但令人困惑的方式使用它们.出于这些原因,最好不要使用它们,imo.
我唯一一次看到这些操作员气馁的是Douglas Crockford的 JavaScript:The Good Parts一书.
引自"坏零件"附录:
增量和减量运算符使得以极其简洁的风格编写成为可能.在诸如C语言之类的语言中,它们可以编写可以执行字符串复制的单行代码:
Run Code Online (Sandbox Code Playgroud)for (p = src, q = dest; !*p; p++, q++) *q = *p;他们还鼓励编程风格,事实证明,它是鲁莽的.大多数缓冲区溢出错误导致了可怕的安全漏洞,这是由于这样的代码.
在我自己的实践中,我观察到当我使用时
++,--,我的代码往往太紧,太神秘.所以,作为纪律问题,我不再使用它们了.我认为结果,我的编码风格变得更加清晰.
另外,引用JSLint文档(他编写的代码质量工具):
已知
++(递增)和--(递减)运算符通过鼓励过多的欺骗来导致错误的代码.它们仅次于故障架构,可以实现病毒和其他安全威胁.有一个plusplus选项禁止使用这些运算符.
他真的不喜欢这些经营者......但是来吧!我认为我们仍然可以使用++和--运算符而无需编写神秘的代码.我用它们,我喜欢它们.每个人都使用它们.
请注意,虽然JSLint可以选择禁止这些运算符,但默认情况下不启用此选项.
我能想到的唯一原因是,与您编写的任何其他代码(html ??)相比,您的Javascript更容易被白痴编辑。
所以对菜鸟来说
x=x+1 ;
Run Code Online (Sandbox Code Playgroud)
比
x++;
Run Code Online (Sandbox Code Playgroud)
与经验丰富的程序员打交道时,这真的没有关系。
| 归档时间: |
|
| 查看次数: |
1650 次 |
| 最近记录: |