我使用function()作为类,并使用this.
范围创建了一些属性:
function field(newMaxX, newMaxY) {
this.maxX = newMaxX;
this.maxY = newMaxY;
}
但这导致此错误:
未捕获的TypeError:无法设置未定义的属性“ maxX”
我已经用函数的相同用法编写了project且没有错误。
function snake(nX, nY, nScore, nDirection, maxX, maxY, cellSize) {
this.cells = [];
this.score = nScore;
...
}
JQuery也指出了这个问题:
jQuery.Deferred异常:无法设置未定义的属性“ maxX”
TypeError:无法设置未定义的属性“ maxX”
我不知道该如何解决。请帮忙。
最佳答案
好的,我发现了问题。我只是忘记使用new
关键字:
gameArea = field(parseInt(MAX_X / CELL_SIZE), parseInt(MAX_Y / CELL_SIZE));
那不起作用,但是可以:
gameArea = new field(parseInt(MAX_X / CELL_SIZE), parseInt(MAX_Y / CELL_SIZE));
谢谢您的意见。