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

news/2024/7/4 1:41:19

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;
}

转载于:https://www.cnblogs.com/xienh/p/5201650.html


http://www.niftyadmin.cn/n/666901.html

相关文章

Android图表库MPAndroidChart(十)——散点图的孪生兄弟气泡图

Android图表库MPAndroidChart(十)——散点图的孪生兄弟气泡图 起泡图和散点图如出一辙&#xff0c;但是个人认为要比散点图好看一点&#xff0c;我们来看下实际的演示效果 这个和散点图的实现很相似&#xff0c;我们一起来看下 一.基本实现 先看下我的xml <com.github.mikep…

MySQL客户端和服务器端工具集

MySQL 一般是安装在服务器上的&#xff0c;我们在客户端可以进行连接&#xff0c;然后可以进行一些增删改查操作。下面我们分服务器端和客户端来讲解一下 MySQL 的实用工具集。 MySQL 服务器端实用工具 1) mysqld SQL 后台程序&#xff08;即 MySQL 服务器进程&#xff09;。…

MySQL下载步骤详解(带安装教程)

用户可以根据自身的操作系统类型&#xff0c;从 MySQL 官方下载页面免费下载相应的服务器安装包。本书以 MySQL 5.7.20 为例介绍其在 Windows 10 操作系统下的安装和配置过程。 用户下载 Windows 图形化安装包的步骤如下。 步骤 1)&#xff1a;打开 MySQL 官方网站&#xff08…

Android图表库MPAndroidChart(十一)——多层级的堆叠条形图

Android图表库MPAndroidChart(十一)——多层级的堆叠条形图 事实上这个也是条形图的一种扩展&#xff0c;我们看下效果就知道了 是吧&#xff0c;他一般满足的需求就是同类数据比较了&#xff0c;不过目前我还真没看过哪个app有这样的图表&#xff0c;但是并不代表我们不能实现…

[NOIP 2010] 引水入城

搜索贪心。 参考博客&#xff1a;http://blog.sina.com.cn/s/blog_8442ec3b0100xib1.html 主要是要看出来&#xff0c;如果有解的话&#xff0c;每个沿湖城市能够流到的范围是连续的区间...然后1遍dfs判断有无解&#xff0c;2遍确定区间&#xff0c;最后排序贪心。 直觉上来说&…

数值转换

对于Number()和paerseInt()"a1231" 两者都是NANnull 前者为0&#xff0c;后者为 NANundefined 两者都是NAN空字符串 前者为0&#xff0c;后者为NANBoolean值 前者为0/1&#xff0c;后者为NAN转载于:https://www.cnbl…

现代女性的半糖主义ZT

我要对爱坚持半糖主义&#xff0c;永远让你觉得意犹未尽&#xff0c;若有似无的甜才不会觉得腻。我要对爱坚持半糖主义&#xff0c;真心不用天天黏在一起……”这一串时下流行于世的歌词&#xff0c; 正挑战着中国女性以爱人为中心的传统观念。与此同时&#xff0c;半糖主义也正…

启动MySQL服务

验证 MySQL 成功安装后&#xff0c;用户需要启动 MySQL 数据库服务并登录。 下面介绍启动MySQL服务&#xff0c;具体操作步骤如下&#xff1a; 步骤 1)&#xff1a;在桌面上右击“此电脑”→“管理”命令&#xff0c;如图所示。 步骤 2)&#xff1a;弹出“计算机管理”对话框…