jQuery功能函数详解(3)

cArray = $.map(aArray, function(value) {
                    return value + value;
                });
                $("p:eq(2)").text(cArray.join());
            });
        </script>
        <p></p>
        <p></p>
        <p></p>

执行结果

a,b,c,d,e,f,g,h,i

A0,B1,C2,D3,E4,F5,G6,H7,I8

A0A0,B1B1,C2C2,D3D3,E4E4,F5F5,G6G6,H7H7,I8I8
使用$.map()函数进行转移后,数组长度不一定与原来的数组相同。可以通过设置null来删除数组的元素。

复制代码 代码如下:


<script type="text/javascript">
            $(function() {
                var aArray = [0, 1, 2, 3, 4, 5, 6, 7, 8];
                $("p:eq(0)").text(aArray.join());
                $("p:eq(1)").text("aArray长度:" + aArray.length + "值:" + aArray.join());
                cArray =$.map(aArray,function(value){
                    //比1大的+1后返回,否则通过设置为null将其删除
                    return value>1?value+1:null;
                });
                $("p:eq(2)").text("cArray长度:" + cArray.length + "值:" + cArray.join());
            });
        </script>
        <p></p>
        <p></p>
        <p></p>

除了删除元素外,$.map转化数组时同样可以增加数组元素。

复制代码 代码如下:


    <script type="text/javascript">
            $(function() {
                var aArray = ["one", "two", "three", "four", "five"];
                $("p:eq(0)").text(aArray.join());
                cArray =$.map(aArray,function(value){
                    return value.split("");
                });
                $("p:eq(1)").text("cArray长度:" + cArray.length + "值:" + cArray.join());
            });
        </script>
        <p></p>
        <p></p>

执行结果

one,two,three,four,five

cArray长度:19值:o,n,e,t,w,o,t,h,r,e,e,f,o,u,r,f,i,v,e
以上代码在$.map转化过程中,split("")方法将元素拆分为一个个字母

iiii搜索数组元素

对于字符串,可以通过indexOf()来搜索特定字符所处的位置,对于数组元素,javascript没有提供类似的方法。在jQ中,$.inArray()函数可以很好的数组元素的搜索功能。语法如下:

$.inArray(value,array)
其中,value为希望查找的对象,array为数组本身,如果找到了则返回第一个匹配元素在数组的位置。如果没有则返回-1.

复制代码 代码如下:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wgfsjw.html