声明for循环变量最佳实践
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了声明for循环变量最佳实践相关的知识,希望对你有一定的参考价值。
我的问题更多是关于for循环风格的好奇心问题。在阅读其他人的旧代码时,我遇到了一种我以前从未见过的风格。
var declaredEarlier = Array
for(var i=0, length=declaredEarlier.length; i < length; i++) {
//stuff
}
我从来没有见过在使用之前声明一个长度,因为这是一个旧的应用程序,这种风格是C / C ++ /旧的Java结转?或者这个开发者是独特的?以这种方式声明长度而不是做我通常做的事情有什么好处:
for(var i=0; i < declaredEarlier.length; i++) {
//stuff
}
如果以前曾经问过,我找不到它。如果它不适用stackoverflow,哪个论坛会更好问?
答案
有两个原因你可以像前面那样抓住前面的长度:
- 如果长度可能会改变(请记住,javascript数组aren't really arrays *及其长度不固定)并且您希望使用原始长度来限制循环,或者
- 为了避免反复查找对象的长度,因为你知道它不会改变
第一个显然是实质性的;第二种是风格和/或微观优化。
*披露:这是我贫穷的小博客上的帖子的链接。
另一答案
对于第一种风格,declaredEarlier
的价值可以改变所以你需要像length=declaredEarlier.length
一样使用它
但对于第二种风格,你已经知道了你不需要再次计算它的价值
以上是关于声明for循环变量最佳实践的主要内容,如果未能解决你的问题,请参考以下文章