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 相关文章推荐
自动更新作用
Oct 08 Javascript
JQUERY 实现窗口滚动搜索框停靠效果(类似滚动停靠)
Mar 27 Javascript
jQuery实现公告文字左右滚动的实例代码
Oct 29 Javascript
不想让浏览器运行javascript脚本的方法
Nov 20 Javascript
Web前端框架bootstrap实战【第一次接触使用】
Dec 28 Javascript
对比分析Django的Q查询及AngularJS的Datatables分页插件
Feb 07 Javascript
基于EasyUI的基础之上实现树形功能菜单
Jun 28 Javascript
Mongoose中document与object的区别示例详解
Sep 18 Javascript
Javascript中从学习bind到实现bind的过程
Jan 05 Javascript
JS 实现缓存算法的示例(FIFO/LRU)
Mar 20 Javascript
JavaScript栈和队列相关操作与实现方法详解
Dec 07 Javascript
Vue中的transition封装组件的实现方法
Aug 13 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
同一空间绑定多个域名而实现访问不同页面的PHP代码
2006/12/06 PHP
php define的第二个参数使用方法
2013/11/04 PHP
修改apache配置文件去除thinkphp url中的index.php
2014/01/17 PHP
php判断linux下程序问题实例
2015/07/09 PHP
编写PHP脚本使WordPress的主题支持Widget侧边栏
2015/12/14 PHP
详解WordPress开发中用于获取分类及子页面的函数用法
2016/01/08 PHP
PHP getallheaders无法获取自定义头(headers)的问题
2016/03/23 PHP
php使用ffmpeg向视频中添加文字字幕的实现方法
2016/05/23 PHP
php实现生成code128条形码的方法详解
2017/07/19 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
laravel框架关于搜索功能的实现
2018/03/15 PHP
解决laravel id非自增 模型取回为0 的问题
2019/10/11 PHP
JavaScript Event学习第四章 传统的事件注册模型
2010/02/07 Javascript
javascript将异步校验表单改写为同步表单
2015/01/27 Javascript
javascript表格的渲染组件
2015/07/03 Javascript
JS+CSS实现大气清新的滑动菜单效果代码
2015/10/22 Javascript
js实现文字闪烁特效的方法
2015/12/17 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
vue如何获取点击事件源的方法
2017/08/10 Javascript
JavaScript中重名的函数与对象示例详析
2017/09/28 Javascript
jqueryUI tab标签页代码分享
2017/10/09 jQuery
vue cli3.0 引入eslint 结合vscode使用
2019/05/27 Javascript
vue实现从外部修改组件内部的变量的值
2020/07/30 Javascript
python函数缺省值与引用学习笔记分享
2013/02/10 Python
Python格式化日期时间操作示例
2018/06/28 Python
python实现简单tftp(基于udp协议)
2018/07/30 Python
python可视化实现代码
2019/01/15 Python
对Python 简单串口收发GUI界面的实例详解
2019/06/12 Python
解决django无法访问本地static文件(js,css,img)网页里js,cs都加载不了
2020/04/07 Python
HTML5在微信内置浏览器下右上角菜单的调整字体导致页面显示错乱的问题
2021/01/19 HTML / CSS
九年级语文教学反思
2014/02/04 职场文书
西门豹教学反思
2014/02/04 职场文书
交通事故私了协议书
2014/04/16 职场文书
精神文明建设先进工作者事迹材料
2014/05/02 职场文书
缓刑人员思想汇报
2014/10/11 职场文书
Python Django项目和应用的创建详解
2021/11/27 Python