/**
工具类
根据数组创建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);
})();原文:http://7032011.blog.51cto.com/7022011/1597861