【发布时间】:2012-07-29 09:47:43
【问题描述】:
当循环结构引起我的注意时,我正在浏览一些 JavaScript 代码。它并没有什么特别的地方,而是以一种与我不同的方式进行迭代。当我需要循环一些不依赖于顺序的东西时,我通常会数数,从头到尾迭代,如下所示:
do
{
// I feel like I'm going in circles
i++;
} while (i < length)
但是,这个 JavaScript 函数倒计时,从头到尾循环。
var i = data.length - 1;
if(i >= 0)
{
do
{
// Around and around, we go
}while(i--)
}
向下计数有什么好处还是只取决于开发人员的偏好?
【问题讨论】:
-
顺便说一句,有没有办法防止“--”变成破折号?
-
如果您想进一步优化,还可以查看Duff's Device。它减少了您必须执行的比较次数(最常见的是 8 倍)。
标签: optimization loops