利用jQuery操作对象数组的实现代码
2023-06-13 09:14:28 时间
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)
删除数组中重复元素。
下面的实例通过对象数组的过滤来实现获取或者删除指定属性为指定值的数组元素。
<scriptsrc="js/jquery.js"></script>
<script>
/**
*从对象数组中删除属性为objPropery,值为objValue元素的对象
*@paramArrayarrPerson数组对象
*@paramStringobjPropery对象的属性
*@paramStringobjPropery对象的值
*@returnArray过滤后数组
*/
functionremove(arrPerson,objPropery,objValue)
{
return$.grep(arrPerson,function(cur,i){
returncur[objPropery]!=objValue;
});
}
/**
*从对象数组中获取属性为objPropery,值为objValue元素的对象
*@paramArrayarrPerson数组对象
*@paramStringobjPropery对象的属性
*@paramStringobjPropery对象的值
*@returnArray过滤后的数组
*/
functionget(arrPerson,objPropery,objValue)
{
return$.grep(arrPerson,function(cur,i){
returncur[objPropery]==objValue;
});
}
/**
*显示对象数组信息
*@paramStringinfo提示信息
*@paramArrayarrPerson对象数组
*/
functionshowPersonInfo(info,arrPerson)
{
$.each(arrPerson,function(index,callback){
info+="Personid:"+arrPerson[index].id+"name:"+arrPerson[index].name+"sex:"+arrPerson[index].sex+"age:"+arrPerson[index].age+"\r\t";
});
alert(info);
}
//测试数据
vararrPerson=newArray();
varperson=newObject();
person.id=1;
person.name="帅哥";
person.sex="男";
person.age=30;
arrPerson.push(person);
person=newObject();
person.id=2;
person.name="美眉甲";
person.sex="女";
person.age=28;
arrPerson.push(person);
person=newObject();
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>
相关文章
- w3c css规范_jquery是w3c标准吗
- jQuery 实现支持分级标题标签的文章目录
- jQuery 事件(三) 事件的绑定和解绑、对象的使用、自定义事件
- jQuery缩放图片详解编程语言
- 关于引入多个jquery冲突的问题(附一个很好用的validate前端验证框架及使用方法)详解编程语言
- jQuery表单插件jquery.form.js详解编程语言
- jquery实现比较靠谱的手风琴代码详解编程语言
- jQuery event对象常用属性汇总
- jQuery对象中的类数组操作
- JQuery操作Javascript对象和数组的工具函数小结
- jQuery处理网页内容的实现代码
- jQuery温习篇强大的JQuery选择器
- jQuery中add实现同时选择两个id对象
- Jquery知识点三jquery表单对象操作
- JavaScript对象之间的转换jQuery对象和原声DOM
- jQuery代码优化遍历篇
- jQuery源码中的chunker正则过滤符分析
- jquery打开直接跳到网页最下面、最低端实现代码
- jQuery中json对象的复制方式介绍(数组及对象)
- JQuery写动态树示例代码
- UpdatePanel和jQuery不兼容局部刷新jquery失效
- Jquery判断$("#id")获取的对象是否存在的方法
- JQuery与JS里submit()的区别示例介绍
- jQuery如何将选中的对象转化为原始的DOM对象
- jQuery.lazyload+masonry改良图片瀑布流代码
- jQuery遍历对象、数组、集合实例
- Jquery对象和Dom对象的区别分析
- 浅谈jQuery中对象遍历.eq().first().last().slice()方法
- JQuery做的一个简单的点灯游戏分享