利用jQuery操作对象数组的实现代码
2011-04-27 00:00
841 查看
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)
删除数组中重复元素。
下面的实例通过对象数组的过滤来实现获取或者删除指定属性为指定值的数组元素。
(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操作对象数组的实现代码
- 【HTML/JS】利用JQuery的load函数动态加载其它页面的内容的实现代码
- jQuery和JavaScript实现相同操作的等价代码
- 使用jQuery操作Cookies的实现代码
- jquery操作json数组的实现代码及常用函数
- 利用jQuery中的ajax分页实现代码
- asp.net中利用Jquery+Ajax+Json实现无刷新分页的实例代码
- JQuery 操作select标签实现代码
- jQuery操作input type=radio的实现代码
- jquery.cookie.js && java后台代码 操作cookie实现记住当前用户输入信息代码
- 项目经验之:利用Jquery+HTML静态模版实现数据的展示及无刷新增加,修改,删除,分页操作!!!
- jquery 操作单选框,复选框,下拉列表实现代码
- jQuery操作 input type=checkbox的实现代码
- 利用jquery对ajax操作,详解原理(附代码)
- 利用jQuery操作对象数组
- jquery 操作表格实现代码(多种操作打包)
- 基于jquery用于查询操作的实现代码
- jQuery操作 input type=checkbox的实现代码