• jQuery工具--$.each()和$.merge()


       jQuery.each(object, [callback])或者jQuery(object).each([callback])

    概述

        通用遍历方法,可用于遍历对象和数组。

        不同于遍历 jQuery 对象的 $().each() 方法,此方法可用于遍历任何对象。回调函数拥有两个参数:第一个为对象的成员或数组的索引,第二个为对应变量或内容。如果需要退出 each 循环可使回调函数返回 false,其它返回值将被忽略

    参数

        object,[callback]  object:需要遍历的对象或数组;callback:每个成员/元素执行的回调函数

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <script type="text/javascript" src="js/jquery-3.1.1.min.js" ></script>
            <title></title>
            <script>
                $(document).ready(function(){
                    var strObj='{"rows":[{"userName":"刘德华","userSex":"男","userAge":22},{"userName":"张卫健","userSex":"男","userAge":22}],"total":3}';
                    var data=JSON.parse(strObj);
                    $("button:eq(0)").click(function(){
                        $.each(data.rows, function(index,value) {
                            alert(""+(index+1)+"个元素的userName:"+value.userName)
                            if(value.userName=="刘德华"){
                                //跳出循环
                                return false;
                            }
                        });
                    });
                    
                    $("button:eq(1)").click(function(){
                        $(data.rows).each(function(index,value) {
                            alert(""+(index+1)+"个元素的userName:"+value.userName)
                            if(value.userName=="刘德华"){
                                //跳出循环
                                return false;
                            }
                        });
                    });
                });
            </script>
        </head>
        <body>
            <button>点击测试$.each(object, [callback])</button><br />
            <button>点击测试$(object).each([callback])</button>
        </body>
    </html>

       jQuery.merge(first,second)

    概述

       合并两个数组

       返回的结果会修改第一个数组的内容——第一个数组的元素后面跟着第二个数组的元素。要去除重复项,请使用$.unique()

    参数

       first,second  first:第一个待处理数组,会改变其中的元素;second:第二个待处理数组,不会改变其中的元素

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <script type="text/javascript" src="js/jquery-3.1.1.min.js" ></script>
            <title></title>
            <script>
                $(document).ready(function(){
                    var strObj='{"rows":[{"userName":"张学友","userSex":"男","userAge":22},{"userName":"刘德华","userSex":"男","userAge":22}],"total":2}';
                    var data=JSON.parse(strObj);
                    var addArr=[];
                    var obj=new Object();
                    obj.userName="张卫健";
                    obj.userSex="";
                    obj.userAge=22;
                    addArr.push(obj);
                    var newArr=$.merge(data.rows,addArr);
                    $("button").click(function(){
                        $.each(newArr, function(index,value) {
                            alert(""+(index+1)+"个元素的userName:"+value.userName)                        
                        });                    
                    });
                });
            </script>
        </head>
        <body>
            <button>点击测试$.merge()</button>
        </body>
    </html>
  • 相关阅读:
    Auto X2021 K Increasing Sequence
    拉普拉斯平滑处理 Laplace Smoothing
    博学之
    Python-生成音乐-pyshnth
    Python-Kivy ImportError: DLL load failed: 找不到指定的模块
    Python-Word模板填充-docxtpl
    Python-文字转语音-pyttsx3
    Virtual Box中Ubuntu使用"桥接网卡"不能联网而使用"网络地址转换(NAT)"却可以上网
    STM32的HAL库中的DMA_FLAG_TCIF3_7等几个宏定义的含义
    Linux下编写互相通信的驱动模块并将其加入到内核中
  • 原文地址:https://www.cnblogs.com/fengfuwanliu/p/10063693.html
Copyright © 2020-2023  润新知