如何跳出 jQuery 每个循环?
如何打破 jQuery each
循环?
我已经尝试过:
return false;
在循环中但这不起作用。有什么想法吗?
2020 年 9 月 5 日更新
我将 return false;
放在了错误的位置。当我将它放入循环中时,一切正常。
How do I break out of a jQuery each
loop?
I have tried:
return false;
in the loop but this did not work. Any ideas?
Update 9/5/2020
I put the return false;
in the wrong place. When I put it inside the loop everything worked.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
要
破坏
$.each
或$(selector).each
循环,您必须返回false
在循环回调中。返回 true 会跳到下一次迭代,相当于正常循环中的 continue 。
To
break
a$.each
or$(selector).each
loop, you have to returnfalse
in the loop callback.Returning
true
skips to the next iteration, equivalent to acontinue
in a normal loop.根据文档
return false;
应该可以完成这项工作。在回调中返回 false:
顺便说一句,
继续
的工作方式如下:According to the documentation
return false;
should do the job.Return false in the callback:
BTW,
continue
works like this:我遇到过这样的情况:我遇到了打破循环的条件,但是 .each() 函数之后的代码仍然执行。然后,我将一个标志设置为“true”,并在 .each() 函数之后立即检查该标志,以确保后面的代码不会被执行。
I came across the situation where I met a condition that broke the loop, however the code after the .each() function still executed. I then set a flag to "true" with an immediate check for the flag after the .each() function to ensure the code that followed was not executed.
我为这个问题的答案创建了一个 Fiddle,因为接受的答案是不正确的,而且这是从 Google 返回的关于这个问题的第一个 StackOverflow 线程。
要突破 $.each,您必须使用
return false;
这是一个证明它的小提琴:
http://jsfiddle.net/9XqRy/
I created a Fiddle for the answer to this question because the accepted answer is incorrect plus this is the first StackOverflow thread returned from Google regarding this question.
To break out of a $.each you must use
return false;
Here is a Fiddle proving it:
http://jsfiddle.net/9XqRy/
我知道这是一个相当老的问题,但我没有看到任何答案,这澄清了为什么以及何时可以打破返回。
我想用两个简单的例子来解释它:
1.示例:
在本例中,我们有一个简单的迭代,如果我们能找到这三个,我们希望返回 true 来中断。
如果我们调用此函数,它将简单地返回 true。
2.示例
在本例中,我们希望使用 jquery 的 每个函数 进行迭代,该函数采用匿名函数作为参数。
I know its quite an old question but I didn't see any answer, which clarify that why and when its possible to break with return.
I would like to explain it with 2 simple examples:
1. Example:
In this case, we have a simple iteration and we want to break with return true, if we can find the three.
if we call this function, it will simply return the true.
2. Example
In this case, we want to iterate with jquery's each function, which takes anonymous function as parameter.
“each”使用回调函数。
回调函数的执行与调用函数无关,因此不可能从回调函数返回到调用函数。
如果必须根据某些条件停止循环执行并保留在同一函数中,请使用 for 循环。
"each" uses callback function.
Callback function execute irrespective of the calling function,so it is not possible to return to calling function from callback function.
use for loop if you have to stop the loop execution based on some condition and remain in to the same function.
我使用这种方式(例如):
如果 cont 不是 false 则运行命令块
I use this way (for example):
if cont isn't false runs commands block
>我们可以使用break关键字来打破循环。
> We can break the loop by using break keyword.