jquery遍历数组与筛选数组的方法


Posted in Javascript onNovember 05, 2013

grep
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]);
        }
    }
);
</script>
 

each
each的使用方法
在jQuery里有一个each方法,用起来非常的爽,不用再像原来那样写for循环,jQuery源码里自己也有很多用到each方法。
其实jQuery里的each方法是通过js里的call方法来实现的。

<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
jQuery.isArray(obj) 是 jQuery 1.3 新增。测试对象是否为数组。  返回值:Boolean
参数 : objObject用于测试是否为数组的对象
示例 :检测是否为数组

<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
map() 把每个元素通过函数传递到当前匹配集合中,生成包含返回值的新的 jQuery 对象。
由于返回值是 jQuery 封装的数组,使用 get() 来处理返回的对象以得到基础的数组。
.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]);
        }
    }
);
</script>

遍历json对象:

<script>
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]);
    }
}
</script>

遍历json对象
有如下 json对象:

var obj ={”name”:”冯娟”,”password”:”123456″,”department”:”技术部”,”sex”:” 女”,”old”:30};
遍历方法:
for(var p in obj){
    str = str+obj[p]+',';
    return str;
}
Javascript 相关文章推荐
jquery ajax post提交数据乱码
Nov 05 Javascript
node.js中的querystring.unescape方法使用说明
Dec 10 Javascript
node.js中的fs.fstatSync方法使用说明
Dec 15 Javascript
浅谈jQuery的offset()方法及示例分享
Jul 17 Javascript
详解JavaScript UTC时间转换方法
Jan 07 Javascript
浅析创建javascript对象的方法
May 13 Javascript
jQuery学习笔记——jqGrid的使用记录(实现分页、搜索功能)
Nov 09 Javascript
基于vue cli重构多页面脚手架过程详解
Jan 23 Javascript
layui问题之模拟select点击事件的实例讲解
Aug 15 Javascript
vue 解决移动端弹出键盘导致页面fixed布局错乱的问题
Nov 06 Javascript
JavaScript实现轮播图片完整代码
Mar 07 Javascript
JS Object构造函数之Object.freeze
Apr 28 Javascript
javascript alert乱码的解决方法
Nov 05 #Javascript
jquery三个关闭弹出层的小示例
Nov 05 #Javascript
jquery ajax post提交数据乱码
Nov 05 #Javascript
jquery ajax属性async(同步异步)示例
Nov 05 #Javascript
jQuery Ajax异步处理Json数据详解
Nov 05 #Javascript
Javascript脚本实现静态网页加密实例代码
Nov 05 #Javascript
客户端js性能优化小技巧整理
Nov 05 #Javascript
You might like
Re:从零开始的异世界生活 第2季 开播啦
2020/07/24 日漫
php 中的str_replace 函数总结
2007/04/27 PHP
在Mac OS上搭建PHP的Yii框架及相关测试环境
2016/02/14 PHP
PHP创建自己的Composer包方法
2018/04/09 PHP
PHP实现的简单组词算法示例
2018/04/10 PHP
PHP使用OB缓存实现静态化功能示例
2019/03/23 PHP
关于Anemometer图形化显示MySQL慢日志的工具搭建及使用的详细介绍
2020/07/13 PHP
javascript 控制弹出窗口
2007/04/10 Javascript
js或css实现滚动广告的几种方案
2010/01/28 Javascript
图片上传判断及预览脚本的效果实例
2013/08/07 Javascript
通过$(this)使用jQuery包装后的方法或属性
2014/05/18 Javascript
js添加select下默认的option的value和text的方法
2014/10/19 Javascript
介绍一个简单的JavaScript类框架
2015/06/24 Javascript
Javascript基础学习笔记(菜鸟必看篇)
2016/07/22 Javascript
jQuery过滤选择器经典应用
2016/08/18 Javascript
微信公众号 客服接口的开发实例详解
2016/09/28 Javascript
详解JavaScript时间处理之几个月前或几个月后的指定日期
2016/12/21 Javascript
Vue内部渲染视图的方法
2019/09/02 Javascript
React学习之JSX与react事件实例分析
2020/01/06 Javascript
js+css实现全屏侧边栏
2020/06/16 Javascript
[04:09]2018年度DOTA2社区贡献奖-完美盛典
2018/12/16 DOTA
深入浅出学习python装饰器
2017/09/29 Python
纯python实现机器学习之kNN算法示例
2018/03/01 Python
python 常见字符串与函数的用法详解
2018/11/23 Python
Pytorch 实现权重初始化
2019/12/31 Python
Django REST framwork的权限验证实例
2020/04/02 Python
浅谈Python3多线程之间的执行顺序问题
2020/05/02 Python
Python如何绘制日历图和热力图
2020/08/07 Python
Python 多线程C段扫描、检测 Ping扫描脚本的实现
2020/09/03 Python
运动会开幕式邀请函
2014/01/22 职场文书
小学新教师培训方案
2014/02/03 职场文书
校庆接待方案
2014/03/18 职场文书
毕业横幅标语
2014/10/08 职场文书
死亡证明书样本说明
2014/10/18 职场文书
企业安全生产规章制度
2015/08/06 职场文书
《观察物体》教学反思
2016/02/17 职场文书