как вернуться к началу цикла for в javascript
Может быть, это глупый вопрос, но есть ли способ вернуться к началу цикла?
Пример:
for(var i = 0; i < 5; i++) {
if(i == 3)
return;
alert(i);
}
На других языках можно было бы ожидать, что оповещение сработает 4 раза примерно так:
Alert (0);
оповещения(1);
тревога(2);
alert(4);
Но вместо этого функция немедленно завершается, когда i равно 3. Что это дает?
2 ответов:
Используйте
continueвместоreturn.Пример: http://jsfiddle.net/TYLgJ/
Если бы вы хотели полностью остановить цикл в этой точке, вы бы использовалиfor(var i = 0; i < 5; i++) { if(i == 3) continue; alert(i); }breakвместоreturn. Операторreturnиспользуется для возврата значения из выполняемой функции.Редактировать: ссылки на документацию предоставлены @epascarello комментарии ниже.
- документы для
continue: https://developer.mozilla.org/en/JavaScript/Reference/Statements/continue- документы для
return: https://developer.mozilla.org/en/JavaScript/Reference/Statements/return
Как бы то ни было, вы можете также обозначить их:
OUTER_LOOP: for (var o = 0; o < 3; o++) { INNER_LOOP: for (var i = 0; i < 3; i++) { if (o && i) { continue OUTER_LOOP; } console.info(o, ':', i); } }Выходы:
0 : 0 0 : 1 0 : 2 1 : 0 2 : 0
Comments