我最近一直在使用javascript,而且我正在使用Chrome(12)开发人员工具而且我收到了错误:
TypeError: Cannot call method 'getSize' of undefined.
我不知道为什么会这样,但已经隔离了似乎是问题的部分:
x = 0;
for(var i=0; i<w; i++){
for(var j=0; j<h; j++) {
display.blit(tile[world[x]], [(i * 34), (j * 34)])
x++;
}
}
x ++;给我错误,当我注释掉代码(x ++;)时,chrome表示没有错误。尽管我可能错了,但Display.blit(tile [world [x]],[(i * 34),(j * 34)]似乎与错误无关。
我的问题是如何解决这个错误以及为什么会发生这种错误。
答案 0 :(得分:0)
问题似乎是你的x超过你阵列中的条目数。因此,当条目未定义时,您将它传递给您调用getSize方法的函数,该函数对于undefined不存在。
如果没有脚本的其余部分以及world和tile所具有的值,很难说出错的地方,但我建议您确认每个正在进行的呼叫都有一个条目。如果您确实知道有多少条目,请尝试使用alert(x)来查看哪个x值会出错。