日期:2014-05-16  浏览次数:20399 次

jquery筛选数组之grep、each、inArray、map的用法及遍历json对象
grep
<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]);
         }
     }
);
</script>



each
<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>

inArray
<script type='text/javascript' src="/jquery.js"></script>
<script type="text/javascript">
$().ready(
     function(){
         var anArray = ['one','two','three'];
         var index = $.inArray('two',anArray);
         alert(index);//返回该值在数组中的键值,返回1
         alert(anArray[index]);//value is two
     }
);
</script>

map
<script type='text/javascript' src="/jquery.js"></script>
<script type="text/javascript">
$().ready(
     function(){
         var strings = ['0','1','2','3','4','S','6'];
         var values = $.map(strings,function(value){
                 var result = new Number(value);
                 return isNaN(result) ? null:result;//isNaN:is Not a Number的缩写
            }
         );
         for (key in values) {
             alert(values[key]);
         }