0
我想我可能做一些愚蠢的,但我不知道......Javascript繼承 - 不能訪問方法
我有以下兩類:
function Sprite()
{
}
Sprite.prototype.test1 = function()
{
console.log("test1");
}
function Player()
{
}
Player.prototype.test2 = function()
{
console.log("test2");
}
Player.prototype = new Sprite();
var player = new Player();
player.test1(); // this works
player.test2(); // this doesn't work..
我努力理解爲什麼test2()不起作用,但test1()確實起作用。如果我爲這些類添加屬性,那麼我可以從它們兩個訪問屬性,我只是不能調用播放器類的方法。我究竟做錯了什麼?
當你將一個完整的對象賦給'Player.prototype'時,你會覆蓋'Player.prototype.test2'。如果你之後定義了'test2',它會在新對象上創建方法,而且兩者都可以工作。 – dandavis