jQuery源代码中的随机分号

时间:2014-04-22 16:19:18

标签: jquery

我只是想知道这个for循环中散布的分号的用途是什么(在jQuery.js中找到)

if ( isArray ) {
 // ... here
    for ( ; i < length; i++ ) {
        value = callback( elems[ i ], i, arg );

        if ( value != null ) {
            ret[ ret.length ] = value;
        }
    }
}

我在整个档案中都看过几次。

P.S。另外,如何更好地阅读复杂的JS?我觉得很难跟踪事情,你认为这是由于缺乏知识/经验,还是我应该以某种方式阅读?

谢谢

2 个答案:

答案 0 :(得分:4)

for有三个可选表达式,它们是

for ([initialization]; [condition]; [final-expression])

如果不需要initialization,则不会传递任何内容,但从上面可以看出,分号需要关闭该表达式并转到condition部分

for ( ; i < length; i++ ) {

如果您不需要final-expression

,也可以这样做
for ( var i=10; i--; )

换句话说,两个分号都是必需的,但表达式是可选的,可以是空的

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for

答案 1 :(得分:0)

for需要三个部分,以分号分隔。在这种情况下,第一部分,即初始化步骤,不存在/什么都不做。