首页 > 代码库 > 根据记录数组解析js实例集合

根据记录数组解析js实例集合

/** 
 工具类
 根据数组创建js Bean数组
 使用方法见使用案例
 @author zliangbing
 @param dataArr
  数据源
 @param yingshejson
  映射json
 @param className
  接收数据用的Bean类类名
 **/
function CreateBeanList(){
}
CreateBeanList.createBeanList=function(dataArr,yingshejson,classObj){
 var result=new Array();
 //1、从dataArr第二条数据开始,dataArr[0]、记录、yingshejson、className作为参数,都可以得到一个Bean对象
 for(var i=1;i<dataArr.length;i++){
  result.push(CreateBeanList.getBean(dataArr[0],dataArr[i],yingshejson,classObj));
 }
 return result;
}
CreateBeanList.getBean=function(names,jilu,yingshejson,classObj){
 var bean=new classObj();
 for(var i=0;i<names.length;i++){
  eval("bean."+eval("yingshejson."+names[i])+"=‘"+jilu[i]+"‘");
 }
 return bean;
};
/**  使用案例  **/
(function demo1(){//使用闭包,前面的代码要以";"结尾
 /**  一、定义Bean  **/
 function TestBean(){};
 TestBean.prototype.unid=‘a‘;
 TestBean.prototype.title=‘b‘;
 /**  二、调用工具类  **/
 //1、构造参数
 var dataArr=[[‘UNID‘,‘TITLE‘],[‘FFFFEFE‘,‘标题1‘],[‘FESEWDD‘,‘标题2‘]];
 var yingshejson={‘UNID‘:‘unid‘,‘TITLE‘:‘title‘};
 var className=‘TestBean‘;
 //2、调用方法
 var result=CreateBeanList.createBeanList(dataArr,yingshejson,eval(className));
 //alert("bean个数:"+result.length+"\n第一个结果:"+result[0].unid+","+result[0].title);
})();

根据记录数组解析js实例集合