Jquery Can';不要在循环外中断(即使它在循环中!)
我试图打破一个循环,如果某个条件是真的。我的代码工作正常,直到我尝试添加入侵。VS2010和IE8运行时出现的intellisense错误都告诉我,我不能突破循环之外的部分,但我认为我不是 我完全糊涂了,希望有人能指出一些明显的我忽略了的东西Jquery Can';不要在循环外中断(即使它在循环中!),jquery,each,break,Jquery,Each,Break,我试图打破一个循环,如果某个条件是真的。我的代码工作正常,直到我尝试添加入侵。VS2010和IE8运行时出现的intellisense错误都告诉我,我不能突破循环之外的部分,但我认为我不是 我完全糊涂了,希望有人能指出一些明显的我忽略了的东西 var value1 = "hello"; $.each(myJsonObject.SomeCollection, function () { if (value1 == this.value2) { alert("Found
var value1 = "hello";
$.each(myJsonObject.SomeCollection, function () {
if (value1 == this.value2) {
alert("Found it!");
exitFlag = true;
}
if (exitFlag) break;
});
简单地
返回false
退出。每个循环:
我们可以一次中断$.each()
循环
通过使
回调函数返回false
。
返回非false与
continue
语句在for循环中;信息技术
将立即跳到下一个
迭代
使用jQuery。每个
迭代器与使用常规循环不同,因此这里不能使用break
。这就像这样,这是不可能的:
for (var i = 0; i < 10; ++i) {
myFunc(i);
}
function myFunc(i) {
if (i > 5) {
break; // ILLEGAL
}
}
for(变量i=0;i<10;++i){
myFunc(i);
}
函数myFunc(i){
如果(i>5){
break;//非法
}
}
简单地返回false
退出。每个循环:
我们可以一次中断$.each()
循环
通过使
回调函数返回false
。
返回非false与
continue
语句在for循环中;信息技术
将立即跳到下一个
迭代
使用jQuery。每个
迭代器与使用常规循环不同,因此这里不能使用break
。这就像这样,这是不可能的:
for (var i = 0; i < 10; ++i) {
myFunc(i);
}
function myFunc(i) {
if (i > 5) {
break; // ILLEGAL
}
}
for(变量i=0;i<10;++i){
myFunc(i);
}
函数myFunc(i){
如果(i>5){
break;//非法
}
}
jQuery可能没有为.each()
函数使用循环。可能返回false
会起作用(在Python中是这样的):
jQuery可能没有为.each()
函数使用循环。可能返回false
会起作用(在Python中是这样的):
如果您的集合可以像数组一样进行处理、导航和索引,只需使用一个常规循环并从中中断即可。或者,如果您非常热衷于使用$。每个
迭代器来完成这样一件简单的事情,那么只需让您的函数返回false(这将有效地使$。每个
迭代器停止)
为了加强我刚才所说的,如果该集合可以被视为一个数组,只需使用一个普通循环。除非你有很好的理由不这样做,否则一定要使用最简单、最干净的工具来完成工作 如果您的集合可以像数组一样进行处理、导航和索引,只需使用常规循环并从中中断即可。或者,如果您非常热衷于使用$。每个
迭代器来完成这样一件简单的事情,那么只需让您的函数返回false(这将有效地使$。每个
迭代器停止)
为了加强我刚才所说的,如果该集合可以被视为一个数组,只需使用一个普通循环。除非你有很好的理由不这样做,否则一定要使用最简单、最干净的工具来完成工作 我会选择在调用alert()
之后立即返回,使其更简单,因为exitFlag
变量不会向示例代码的结构添加任何值。您不能从if语句中的循环返回,但可以吗?我会选择在调用alert()之后立即返回,使其更简单
因为exitFlag
变量不会给示例代码的结构添加任何值。您不能从if语句中的循环返回,但是可以吗?我先尝试了,它给了我一个类似的问题-稍后将重试,谢谢,我先试过了,它给了我一个类似的问题,不过我会稍后再试,谢谢