{EDIT}实际代码:http://jsfiddle.net/r79xtbdm/
我有一个构造函数如下(伪代码):
function Tile(<pass in arguments here>)
{
// set some variables here based on arguments passed (this.width, this.height) etc..
}
在这个构造函数之外,我使用prototype为函数提供如下方法:
Tile.prototype.draw = function() {
// do some stuff
}
我有另外一个功能如下:
function createTileMap()
{
var firstTile = new Tile(<arguments>);
firstTile.draw();
}
我遇到的问题是正在创建firstTile对象(我可以访问它的属性)。但是,firstTile.draw会引发未定义的函数错误。我认为这是一个范围问题,但无法理解它。为什么createTileMap函数看不到已添加到tile构造函数的原型方法?
谢谢!我一直用头撞墙几个小时。