利用jQuery操作对象数组

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


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/doug_wang/archive/2009/11/05/4773159.aspx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值