我正在开发一个 HTML5/Canvas 游戏引擎,但我被卡住了。引擎通过瓦片集绘制地图,并从 XML 文档中读取地图数据,如下所示:
<map>
<layer id="-1">
<row>0,0,0</row>
<row>1,1,1</row>
<row>0,0,0</row>
</layer>
<layer id="1">
<row>0,0,0</row>
<row>1,1,1</row>
<row>0,0,0</row>
</layer>
</map>
以及将数据加载到二维数组中的 JavaScript:
var layers = xml.getElementsByTagName("layer");
for(var i in layers)
{
var rows = layers[i].childNodes;
for(var j in rows)
{
array[i][j] = rows[j].nodeValue;
}
}
问题:返回的数据只是“null”、“”和“undefined”的混杂。此外,数组似乎比必要的要小,因为在我检查所有值之前,我检查了节点的数量(使用长度属性),它总是比实际的节点数量多。