JQuery каждый уйти рано - PullRequest
       14

JQuery каждый уйти рано

4 голосов
/ 07 декабря 2009

У меня есть цикл jQuery for-each в массиве, и я задаюсь вопросом, можно ли выйти из него раньше.

$(lines).each(function(i){  
    // some code  
    if(condition){  
        // I need something like break;  
    }  
});

break; на самом деле не работает, по причине.

Если бы я написал цикл for, он бы выглядел так (но я этого не хочу):

for(i=0; i < lines.length; i++){  
    // some code  
    if(condition){  
        break; // leave the loop 
    }  
};

Заранее спасибо -Martin

Ответы [ 2 ]

12 голосов
/ 07 декабря 2009

Согласно документам :

Если вы хотите разорвать цикл each () на определенной итерации, вы можете сделать это, заставив вашу функцию возвращать false. Возврат non-false - это то же самое, что и оператор continue в цикле for, он будет сразу пропущен до следующей итерации.

4 голосов
/ 07 декабря 2009

Возвращает логическое значение false;
(СМ. http://docs.jquery.com/Utilities/jQuery.each, четвертый абзац)

$(lines).each(function(i){  
    // some code  
    if(condition){  
        // I need something like break;  
        return false;
    }  
});
...