zoukankan      html  css  js  c++  java
  • JQuery跳出each循环的方法(包含数组遍历)

    0. 前言

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

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

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

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

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

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

    例子代码如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    $(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')。

    代码如下:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function test(){
    var success = false;
    $(..).each(function () {
       if (..) {
           success = true;
           return false;
       }
    });
     return success ;
    }

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

  • 相关阅读:
    [Machine Learning]Numpy
    [LeetCode]Valid Palindrome
    [LeetCode]Remove Linked List Elements
    [LeetCode]Reverse Linked List
    [LeetCode]Palindrome Number
    Spring绑定请求参数过程以及使用@InitBinder来注册自己的属性处理器
    servlet温故知新
    线程池简单实现
    JAVA NIO学习笔记
    XSS攻击简单介绍
  • 原文地址:https://www.cnblogs.com/linqingvoe/p/11230566.html
Copyright © 2011-2022 走看看