JavaScript For Loop - 执行终止条件

JavaScript For Loop - execution termination condition

本文关键字:终止 条件 执行 For Loop JavaScript      更新时间:2024-03-15

我在这里查看 ExtJs 文档中Ext对象的源代码,我注意到这个for循环:

for (j = enumerables.length; j--;) {
    k = enumerables[j];
    if (config.hasOwnProperty(k)) {
        object[k] = config[k];
    }
}

因此,通常在for循环中,我们必须进行初始化,指定条件,然后递增/递减计数器。我确实看到了一个初始条件和j--,它在每次迭代后都会减少计数器。但是,我无法弄清楚的是循环将如何终止?我既没有看到任何条件,也没有break关键字可以终止循环。

我在这里错过了什么?

j--

循环条件,这就是它的终止方式。 尾随;)是缺少的增量/递减。

j-- 构造两个递减 j 并测试非零的旧未递减值,以决定是否继续循环。 当 j 为零时,循环停止;在循环下方,j 的值将为 -1。

要查找的 for 循环的关键部分是分号 -- for ( ; ; )任何有效的表达式(或逗号分隔的表达式列表(都可以放在分号之前、中间和之后的三个插槽中的任何一个。

循环初始值设定项在(之后和第一个;之前。 循环条件是两个; ;之间的表达式的值。 循环后更新在最后一个;之后和)之前。