我正试图在对象Board中调用Board原型中的一个函数。看看其他堆栈溢出的帖子,我没有发现任何问题。然而,我得到了错误"Uncaught TypeError:Object[Object global]没有方法'generateCards"。我不知道为什么会这样。
function Board(startingPlayer, players){
this.cards = this.generateCards(10);
}
Board.prototype.generateCards = function(numCardsToGenerate){
return "I have accessed this function";
}
您需要使用new
关键字创建一个新的板对象,否则Board
函数中的this
将引用没有generateCards
方法的window
(在严格模式下未定义)对象。
所以试试
var b1 = new Board();
演示:Fiddle,严格模式
在小提琴中,第二个板的创建是抛出错误