我有一些代码:
$(xml).find("strengths").each(function() {
//Code
//How can i escape from this block based on a condition.
});
如何根据条件逃离“每个”代码块?
如果我们有这样的事情怎么办:
$(xml).find("strengths").each(function() {
$(this).each(function() {
//I want to break out from both each loops at the same time.
});
});
是否有可能从内部“每个”功能中突破“每个”功能?
#19.03.2013
如果您想继续而不是突破
return true;
答案 0 :(得分:965)
根据documentation,您只需return false;
即可打破:
$(xml).find("strengths").each(function() {
if (iWantToBreak)
return false;
});
答案 1 :(得分:105)
从匿名函数返回false:
$(xml).find("strengths").each(function() {
// Code
// To escape from this block based on a condition:
if (something) return false;
});
来自each method的文档:
从每个内部返回'false' 功能完全停止循环 通过所有元素(这是 比如使用正常的“休息” 环)。从内部回归“真实” 循环跳到下一次迭代 (这就像使用'继续'一样 一个正常的循环)。
答案 2 :(得分:105)
您可以使用return false;
+----------------------------------------+
| JavaScript | PHP |
+-------------------------+--------------+
| | |
| return false; | break; |
| | |
| return true; or return; | continue; |
+-------------------------+--------------+
答案 3 :(得分:23)
if (condition){ // where condition evaluates to true
return false
}
请参阅3天前发出的 similar question。