【分享】Jquery遍历筛选数组的几种方法和遍历解析json对象|Map()方法详解

一、Jquery遍历筛选数组

1、jquery grep()筛选遍历数组

$().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]);
       }
   }
);


2、jquery each()筛选遍历数组
$().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);
       }
       );
   }
);


3、jquery inArray()筛选遍历数组

$().ready(
   function(){
       var anArray = ['one','two','three'];
       var index = $.inArray(‘two’,anArray);
       alert(index);//返回该值在数组中的键值,返回1
       alert(anArray[index]);//value is two
   }
);


4、jquery map()筛选遍历数组
$().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]);
       }
   }
);


二、遍历解析json对象

1、jquery遍历解析json对象1:
var json = [{dd:'SB',AA:'东东',re1:123},{cccc:'dd',lk:'1qw'}];
for(var i=0,l=json.length;i<l;i++){
   for(var key in json[i]){
       alert(key+’:'+json[i][key]);
   }
}

2、jquery遍历解析json对象2
有如下 json对象:
var obj ={”name”:”冯娟”,”password”:”123456″,”department”:”技术部”,”sex”:” 女”,”old”:30};
遍历方法:
for(var p in obj){
   str = str+obj[p]+’,’;
   return str;

}

三、Map()方法详解

1、实例

构建表单中所有值的列表:

$("p").append( $("input").map(function(){

  return $(this).val();

}).get().join(", ") );

2、定义和用法

map() 把每个元素通过函数传递到当前匹配集合中,生成包含返回值的新的 jQuery 对象。

3语法

.map(callback(index,domElement))

参数

描述

callback(index,domElement)

对当前集合中的每个元素调用的函数对象。

详细说明

由于返回值是 jQuery 封装的数组,使用 get() 来处理返回的对象以得到基础的数组。

.map() 方法对于获得或设置元素集的值特别有用。请思考下面这个带有一系列复选框的表单:

<form method="post" action="">

 <fieldset>
    <div>
      <label for="two">2</label>
      <input type="checkbox" value="2" id="two" name="number[]">
    </div>
    <div>
      <label for="four">4</label>
      <input type="checkbox" value="4" id="four" name="number[]">
    </div>
    <div>
      <label for="six">6</label>
      <input type="checkbox" value="6" id="six" name="number[]">
    </div>
    <div>
      <label for="eight">8</label>
      <input type="checkbox" value="8" id="eight" name="number[]">
    </div>
 </fieldset>

</form>

我们能够获得复选框 ID 组成的逗号分隔的列表:

$(':checkbox').map(function() {

  return this.id;

}).get().join(',');

本次调用的结果是字符串:"two,four,six,eight"

callback 函数内部,this 引用每次迭代的当前 DOM 元素。该函数可返回单独的数据项,或者是要被插入结果集中的数据项的数组。如果返回的是数组,数组内的元素会被插入集合中。如果函数返回 null undefined,则不会插入任何元素。


阅读本文后,您的心情是:
 
恶心
愤怒
强赞
感动
路过
无聊
雷囧
关注
知识共享许可协议
评论(0) 浏览(19002) 引用(0)
引用地址:http://blog.baiwand.com/tb.php?sc=be490f&id=99
Tags:
« 【分享】JS获取中文拼音首字母 【分享】JQuery 选择器、过滤器及JQ对象和DOM对象的互相转换 »

Blogger

  • blogger
  • 天之骄子
  • 职位:研发工程师
    铭言:
    阳光与欢乐同在,
    与我同在
    主页:
    blog.baiwand.com

分类目录

日志归档

主题标签

数据统计

  • 日志:151篇
  • 评论:45条
  • 碎语:264条
  • 引用:0条

链接表

随机日志 »

最新日志 »

最新评论 »

标签云 »

订阅Rss
sitemap