【转】利用jQuery操作对象数组 by 轻吻情缘
2011-04-27 09:06
836 查看
jQuery对于数组元素操作主要提供了以下工具:
(1)数组和对象的例遍:jQuery.each(obj,callback)
通用例遍方法,可用于例遍对象和数组。回调函数拥有两个参数:第一个为对象的成员或数组的索引,第二个为对应变量或内容。如果需要退出 each 循环可使回调函数返回 false,其它返回值将被忽略。
(2)数组元素的过滤:jQuery.grep(array,callback,[invert])
使用过滤函数过滤数组元素。此函数至少传递两个参数:待过滤数组和过滤函数。过滤函数必须返回 true 以保留元素或 false 以删除元素。
(3)数组元素的查找:jQuery.inArray(value,array)
确定第一个参数在数组中的位置(如果没有找到则返回 -1 )。
(4)删除重复元素:jQuery.unique(array)
删除数组中重复元素。
下面的实例通过对象数组的过滤来实现获取或者删除指定属性为指定值的数组元素。
原文地址:http://blog.csdn.net/doug_wang/archive/2009/11/05/4773159.aspx
(1)数组和对象的例遍:jQuery.each(obj,callback)
通用例遍方法,可用于例遍对象和数组。回调函数拥有两个参数:第一个为对象的成员或数组的索引,第二个为对应变量或内容。如果需要退出 each 循环可使回调函数返回 false,其它返回值将被忽略。
(2)数组元素的过滤:jQuery.grep(array,callback,[invert])
使用过滤函数过滤数组元素。此函数至少传递两个参数:待过滤数组和过滤函数。过滤函数必须返回 true 以保留元素或 false 以删除元素。
(3)数组元素的查找:jQuery.inArray(value,array)
确定第一个参数在数组中的位置(如果没有找到则返回 -1 )。
(4)删除重复元素:jQuery.unique(array)
删除数组中重复元素。
下面的实例通过对象数组的过滤来实现获取或者删除指定属性为指定值的数组元素。
<script src="js/jquery.js" ></script> <script> /** * 从对象数组中删除属性为objPropery,值为objValue元素的对象 * @param Array arrPerson 数组对象 * @param String objPropery 对象的属性 * @param String objPropery 对象的值 * @return Array 过滤后数组 */ function remove(arrPerson,objPropery,objValue) { return $.grep(arrPerson, function(cur,i){ return cur[objPropery]!=objValue; }); } /** * 从对象数组中获取属性为objPropery,值为objValue元素的对象 * @param Array arrPerson 数组对象 * @param String objPropery 对象的属性 * @param String objPropery 对象的值 * @return Array 过滤后的数组 */ function get(arrPerson,objPropery,objValue) { return $.grep(arrPerson, function(cur,i){ return cur[objPropery]==objValue; }); } /** * 显示对象数组信息 * @param String info 提示信息 * @param Array arrPerson 对象数组 */ function showPersonInfo(info,arrPerson) { $.each(arrPerson, function(index,callback){ info+="Person id:" + arrPerson[index].id + " name:" + arrPerson[index].name+ " sex:"+ arrPerson[index].sex+" age:"+ arrPerson[index].age+"\r\t"; }); alert(info); } //测试数据 var arrPerson=new Array(); var person=new Object(); person.id=1; person.name="帅哥"; person.sex="男"; person.age=30; arrPerson.push(person); person=new Object(); person.id=2; person.name="美眉甲"; person.sex="女"; person.age=28; arrPerson.push(person); person=new Object(); person.id=3; person.name="美眉乙"; person.sex="女"; person.age=20; arrPerson.push(person); //测试删除 showPersonInfo("原始数组:\r\t",arrPerson); arrPerson=remove(arrPerson,"id",1); showPersonInfo("删除之后:\r\t",arrPerson); //测试获取 arrPerson=get(arrPerson,"id",3); showPersonInfo("只获取ID为3的元素:\r\t",arrPerson); </script> |
相关文章推荐
- 利用jQuery操作对象数组
- 在jquery中,遍历对象和数组,经常会用到$().each和$.each(),两个方法。两个方法是有区别的,从而这两个方法在针对不同的操作上,显示了各自的特点。 $().each,对于这个方法,在
- 利用jQuery操作对象数组Array,JS行政区划数组连动
- jquery数组和对象操作
- Jquery操作js数组及对象示例代码
- jquery数组和对象操作
- JQuery 操作Javascript对象和数组的工具函数小结
- Jquery数组和对象操作
- jQuery对象中类数组的概念及操作
- 用jquery实现cookie的操作以及创建js数组和遍历js数组,js对象,jquery.json的使用
- Java -- 利用反射 操作任意数组,包括对象数组 和 基本数据类型的数组
- jQuery对象中的类数组操作
- javascript、JQuery操作数组、Json对象、缓存
- JQuery操作Javascript对象和数组的工具函数总览
- Java -- 利用反射 操作任意数组,包括对象数组 和 基本数据类型的数组
- jQuery 1.6 源码学习(六)——core.js[6]之jQuery对象/数组操作相关方法
- Jquery数组和对象操作
- JQuery操作Javascript对象和数组的工具函数总览(转)
- jQuery 对象中的类数组操作
- checkbox中jQuery对数组和对象的操作