87,992
社区成员
发帖
与我相关
我的任务
分享
var gridList = ['gzjh','xgbb','tsld','jckh','shfx','xbsx','gzzj'];
var gridLLen = gridList.length;
for(var i=0;i<gridLLen;i++){
var grid_gzjh = new Ext.grid.GridPanel({
//var 'grid_'+gridList[i] = new Ext.grid.GridPanel({
frame : false,
id : 'grid_'+gridList[i],
name : 'grid_'+gridList[i],
ds : ds_gzjh,
cm : cm_gzjh,
height : 500,
loadMask : {
msg : "数据加载中......"
}
})
}
function Person(){
this.name='person';
}
var person = 'new Person()';
console.log(typeof person);
person = eval(person);
console.log(typeof person);
console.log(person.name);
运行一下上面的代码,是不是感觉有点像反射。
var arr = ['gzjh','xgbb','tsld'];
var str = '';
for(var i in arr){
str+='var grid_'+arr[i]+' = "' + arr[i] + '";';
}
eval(str);
console.log(grid_gzjh);
console.log(grid_xgbb);
console.log(grid_tsld);
这个意思不?
for (var pro in gridDataObj){
alert(pro+":"+gridDataObj[pro]);
}
最后一个循环查看一下生成的对象的内容;
var gridList = ['gzjh','xgbb','tsld','jckh','shfx','xbsx','gzzj'];
var gridDataArray=[];
for(var i=0;i<gridList.length;i++)
{
var keyName="grid_"+gridList[i];
gridDataArray.push('"'+keyName+'"'+":"+'"'+gridList[i]+'"');
}
var gridDataObj="{"+gridDataArray.join(",")+"}";
gridDataObj=eval("("+gridDataObj+")");
for (var pro in gridDataObj){
alert(pro);
}
楼主是这个意思吗?