JQuery跳出each循环的方法(包含数组遍历)

0. 前言

也许我们通过 jquery 的循环方法进行数组遍历,但是当不符合条件时,怎么跳出当前循环?(即用each方法内,当不满足条件时想break跳出循环体,想continue继续执行下一个循环遍历),我们经常会习惯JS中的break何continue,但是使用之后没有效果,因为在JQuery中没有这两条命令,非其关键字。

1. JQuery each循环,要实现javascript的break和continue功能

break ----用return false;
continue --用return ture;

2. JQuery怎么跳出当前的each循环

API 上的说明只有跳出整个循环(如果需要退出 each 循环可使回调函数返回 false,其它返回值将被忽略。)

return false;——跳出所有循环;相当于 javascript 中的 break 效果。
return true;——跳出当前循环,进入下一个循环;相当于 javascript 中的 continue 效果

例子代码如下:

$(function (){
 $("input[type='text']").each(function (i){ 
  var _val=$(this).val();
  alert(_val);
  if(_val=='2'){  
   return false; //跳出循环
  }
 })
});

3. JQuery each方法跳出循环并获得返回值的方法

return false:将停止循环 (就像在普通的循环中使用 'break')。
return true:跳至下一个循环(就像在普通的循环中使用'continue')。

代码如下:

function test(){
var success = false;
$(..).each(function () {
   if (..) {
       success = true;
       return false;
   }
});
 return success ;
}

JQuery是对象链,所以$(..).each()返回的还是对象集合。each(function(){}):是回调函数,在回调函数里不能返回结果到回调函数each外面。

原文:http://www.cnblogs.com/fanbi/p/7573947.html
参考:http://www.aijquery.cn/Html/jqueryrumen/73.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。