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 相关文章推荐
激活 ActiveX 控件
Oct 09 Javascript
JS生成不重复随机数组的函数代码
Jun 10 Javascript
JavaScript函数参数使用带参数名的方式赋值传入的方法
Mar 19 Javascript
JavaScript实现快速排序的方法
Jul 31 Javascript
微信小程序中的swiper组件详解
Apr 14 Javascript
jQuery实现的简单前端搜索功能示例
Oct 28 jQuery
将Sublime Text 3 添加到右键中的简单方法
Dec 12 Javascript
Vue中v-show添加表达式的问题(判断是否显示)
Mar 26 Javascript
JS编写兼容IE6,7,8浏览器无缝自动轮播
Oct 12 Javascript
详细介绍解决vue和jsp结合的方法
Feb 06 Javascript
vue-以文件流-blob-的形式-下载-导出文件操作
Aug 07 Javascript
nuxt静态部署打包相对路径操作
Nov 06 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
DOTA2 探索永无止境 玩家自创强悍插眼攻略
2020/04/20 DOTA
php另类上传图片的方法(PHP用Socket上传图片)
2013/10/30 PHP
PHP打开和关闭文件操作函数总结
2014/11/18 PHP
php实现smarty模板无限极分类的方法
2015/12/07 PHP
WordPress中转义HTML与过滤链接的相关PHP函数使用解析
2015/12/22 PHP
PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】
2018/12/21 PHP
PHP5.6.8连接SQL Server 2008 R2数据库常用技巧分析总结
2019/05/06 PHP
php版本CKEditor 4和CKFinder安装及配置方法图文教程
2019/06/05 PHP
JS验证日期的格式YYYY-mm-dd 具体实现
2013/06/29 Javascript
文本域光标操作的jQuery扩展分享
2014/03/10 Javascript
JavaScript对象数组排序实例方法浅析
2016/06/15 Javascript
深入浅析javascript中的作用域(推荐)
2016/07/19 Javascript
vue实现全选、反选功能
2020/11/17 Javascript
AngularJs点击状态值改变背景色的实例
2017/12/18 Javascript
JS随机数产生代码分享
2018/02/24 Javascript
基于Vue2x实现响应式自适应轮播组件插件VueSliderShow功能
2018/05/16 Javascript
微信小程序实现文字跑马灯
2020/05/26 Javascript
[50:48]LGD vs CHAOS 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
跟老齐学Python之不要红头文件(2)
2014/09/28 Python
使用Python编写Linux系统守护进程实例
2015/02/03 Python
Python中的数学运算操作符使用进阶
2016/06/20 Python
Python实现将数据框数据写入mongodb及mysql数据库的方法
2018/04/02 Python
Python格式化输出%s和%d
2018/05/07 Python
用python标准库difflib比较两份文件的异同详解
2018/11/16 Python
Python给定一个句子倒序输出单词以及字母的方法
2018/12/20 Python
Django生成PDF文档显示在网页上以及解决PDF中文显示乱码的问题
2019/07/04 Python
使用Tkinter制作信息提示框
2020/02/18 Python
pandas分组聚合详解
2020/04/10 Python
汉语言文学毕业生求职信
2013/10/01 职场文书
《白鹅》教学反思
2014/04/13 职场文书
公司授权委托书格式范文
2014/10/02 职场文书
大学生考试作弊检讨书1000字
2014/10/14 职场文书
2015年爱牙日活动总结
2015/03/23 职场文书
HR必备:销售经理聘用合同范本
2019/08/21 职场文书
手把手教你使用TensorFlow2实现RNN
2021/07/15 Python
正则表达式拆分url实例代码
2022/02/24 Java/Android