How to break/exit from a each() function in JQuery? [duplicate]

How to break/exit from a each() function in JQuery? [duplicate]

This question already has an answer here:

How to break out of jQuery each Loop

6 answers

I have some code:
$(xml).find(“strengths”).each(function() {
//Code
//How can i escape from this block based on a condition.
});

How can i escape from the “each” code block based on a condition?
Update:
What if we have something like this:
$(xml).find(“strengths”).each(function() {
$(this).each(function() {
//I want to break out from both each loops at the same time.
});
});

Is it possible to break out from both “each” functions from the inner “each” function?
# 19.03.2013
If you want to continue instead of break out
return true;

Solutions/Answers:

Solution 1:

According to the documentation you can simply return false; to break:

$(xml).find("strengths").each(function() {

    if (iWantToBreak)
        return false;
});

Solution 2:

You can use return false;

+----------------------------------------+
| JavaScript              | PHP          |
+-------------------------+--------------+
|                         |              |
| return false;           | break;       |
|                         |              |
| return true; or return; | continue;    |
+-------------------------+--------------+

Solution 3:

Return false from the anonymous function:

$(xml).find("strengths").each(function() {
  // Code
  // To escape from this block based on a condition:
  if (something) return false;
});

From the documentation of the each method:

Returning ‘false’ from within the each
function completely stops the loop
through all of the elements (this is
like using a ‘break’ with a normal
loop). Returning ‘true’ from within
the loop skips to the next iteration
(this is like using a ‘continue’ with
a normal loop).

Solution 4:

if (condition){ // where condition evaluates to true 
    return false
}

see similar question asked 3 days ago.