数据(数组,json)的处理

有些时候咱们在作联动事件以及获取动态的数据是,给到咱们的都是数组,json格式的数据。javascript

为了方便快速的处理这些数据,jq给咱们提供了不少简便的方法。java

each()方法jquery

在jQuery里有一个each方法,用起来很是的爽,不用再像原来那样写for循环,jQuery源码里本身也有不少用到each方法。json

<script type='text/javascript' src="/jquery.js"></script>
<script type="text/javascript">
$().ready(
    function(){
        var anObject = {one:1,two:2,three:3};//对json数组each
        $.each(anObject,function(name,value) {
            alert(name);
            alert(value);
        });
        var anArray = ['one','two','three'];
        $.each(anArray,function(n,value){
            alert(n);
            alert(value);
        }
        );
    }
);
</script> 

grep()方法用于数组元素过滤筛选
grep(array,callback,invert)
array:待过滤数组;
callback: 处理数组中的每一个元素,并过滤元素,该函数中包含两个参数,第一个是当前数组元素的值,一个是当前数组元素的下标,即元素索引值。此函数应返回一个布尔 值。另外,此函数可设置为一个字符串,当设置为字符串时,将视为“lambda-form”(缩写形式?),其中 a 表明数组元素,i 表明元素索引值。如“a > 0”表明“function(a){ return a > 0; }”
invert:布尔型可选项,默认值false,值为true或false, 若是 “invert” 为 false 或为设置,则函数返回数组中由过滤函数返回 true 的元素,当”invert” 为 true,则返回过滤函数中返回 false 的元素集数组

<script type='text/javascript' src="/jquery.js"></script>
<script type="text/javascript">
$().ready(
    function(){
        var array = [1,2,3,4,5,6,7,8,9];
        var filterarray = $.grep(array,function(value){
            return value > 5;//筛选出大于5的
        });
        for(var i=0;i<filterarray.length;i++){
            alert(filterarray[i]);
        }
        for (key in filterarray){
            alert(filterarray[key]); //for循环的两种方法;
        }
    }
);
</script>

处理数据还有不少其余的方法,只不过这两个是比较经常使用的,效果比较好的。函数

相关文章
相关标签/搜索