我正在制作基于浏览器的游戏,其中涉及到一张地图。为了渲染地图,我使用两个循环来从json集合中检索地图数据。 JSON集看起来像这样(示例):检索与循环相关的特殊JSON值
var map = {
'y1':{'x1':{'type':'grass'}, 'x2':{'type':'water'}, 'x3':{'type':'grass'}},
'y2':{'x1':{'type':'grass'}, 'x2':{'type':'water'}, 'x3':{'type':'grass'}},
'y3':{'x1':{'type':'grass'}, 'x2':{'type':'water'}, 'x3':{'type':'grass'}},
'y4':{'x1':{'type':'grass'}, 'x2':{'type':'water'}, 'x3':{'type':'grass'}},
'y5':{'x1':{'type':'grass'}, 'x2':{'type':'water'}, 'x3':{'type':'grass'}}
};
有两个循环。一个带有与Y轴相关的变量i
和与X轴相关联的变量ii
。我怎样才能得到像map.yi.xii.type
这样的标签的json数据?我一直试图这样做几天,但我对json很陌生,找不到任何答案。我的地图代码如下。任何帮助,将不胜感激。如果我不清楚,请让我知道,我会尽力给出更好的解释。
var create = '';
for(i=0; i <= 4; i++)
{
var hello="x1";
create += '<table cellpadding="0" cellspacing="0"><tr>';
for(ii=0; ii <= i; ii++){
if(i==4 && ii==2){
create += '<td class="'+map.y1.x1.type+'" align="center" valign="center"><img src="images/map/dot.gif"/></td>';
}
else{
create += '<td class="'+map.y1.x2.type+'"/>';
}
}
create += '</tr></table>';
}
for(x=4; x >= 0; x--)
{
create += '<table cellpadding="0" cellspacing="0"><tr>';
for(xx=0; xx < x; xx++){
create += '<td class="'+map.y1.x2.type+'"/>';
}
create += '</tr></table>';
}
看起来像一个正常的JavaScript对象http://benalman.com/news/2010/03/theres-no-such-thing-as-a-json/ – 2011-02-13 21:56:58
请不要两次提出问题 – 2011-02-13 22:00:03