Sunday, June 2, 2024
 Popular · Latest · Hot · Upcoming
128
rated 0 times [  129] [ 1]  / answers: 1 / hits: 61337  / 13 Years ago, sat, january 7, 2012, 12:00:00

  • There is continue; to stop the loop and move to the next loop

  • There is break; to stop the loop and move to the end of the loop



Isn't there some kind of start; that stop the loop and move to the beginning of the loop?



I know it is easy to achieve all of these three actions by just modifying the value of i, but I always try to look for already built-it functions.


More From » loops

 Answers
45

No - there is no keyword or other way to do it automatically.



As you already mentioned you can just modify the loop condition variable(s) within your loop. Easy if it's a simple i counter, but of course you may have more initialisation to do than just a simple counter.



Or you can do something like the following:



restartLoop:
while (true) {
for (var i=0, j=100000, x=test; i < 1000; i++, j--, x+= .) {
if (/*some condition, want to restart the loop*/)
continue restartLoop;
}
break;
}


The continue restartLoop will jump back out to continue with the next iteration of the while loop, which then immediately starts the for loop from the beginning including all of the initialisation code. If the for exits normally the break statement after it will break out of the containing while loop.



I don't really recommend doing this in a general sense, but if your loop initialisation process was really complicated it could be worth it because then you wouldn't need to repeat it all inside the loop. If you needed to do even more initialisation than fits nicely in the for statement's initialisation expression you can easily put it just before the for loop inside the while and it will all be re-run...


[#88179] Thursday, January 5, 2012, 13 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
nora

Total Points: 248
Total Questions: 111
Total Answers: 97

Location: India
Member since Wed, Aug 4, 2021
3 Years ago
nora questions
Tue, Nov 3, 20, 00:00, 4 Years ago
Wed, Sep 9, 20, 00:00, 4 Years ago
Mon, Jun 15, 20, 00:00, 4 Years ago
Wed, May 13, 20, 00:00, 4 Years ago
;