/** 工具類 根據數組創建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實例集合
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.