Javascript 调用函数时,它返回未定义的
我正在制作Android版本的CandyBox2(我知道有些已经存在了,但我真的想做一个更好的)。 要另存为文本,需要调用此函数:Javascript 调用函数时,它返回未定义的,javascript,android,Javascript,Android,我正在制作Android版本的CandyBox2(我知道有些已经存在了,但我真的想做一个更好的)。 要另存为文本,需要调用此函数: Save.prototype.clickedFileSave(); 如果我从Save var执行它,那么我需要从URL调用它。 我试过这个: javascript:Save.prototype.clickedFileSave(); 或者这个: javascript:Save.prototype.clickedFileSave.call(); 甚至这个: win
Save.prototype.clickedFileSave();
如果我从Save var执行它,那么我需要从URL调用它。
我试过这个:
javascript:Save.prototype.clickedFileSave();
或者这个:
javascript:Save.prototype.clickedFileSave.call();
甚至这个:
window[Save.prototype.clickedFileSave]);
最后一个根本不起作用,因为它是一个函数而不是一个方法,但另外两个返回:
TypeError:此.getGame(…)未定义
如果你对如何解决这个问题有任何想法,我很想知道。
谢谢
这是保存和放置变量(通过pastebin,它很大):
- 有一个根本性的误解
定义为
Save.prototype.clickedFileSave
的方法是类/对象Save
的一部分,可以在Save
的实例上调用:
var game = new Game(...);
var save = new Save(game);
save.clickedFileSave();
Save.prototype.clickedFileSave.apply(save);
除非将Save
的实例传递给原型,否则不能直接通过原型调用它:
var game = new Game(...);
var save = new Save(game);
save.clickedFileSave();
Save.prototype.clickedFileSave.apply(save);
您得到的错误意味着
.getGame(…)
也是一种保存方法,定义为Save.prototype.getGame
,并在单击文件保存中引用this.getGame(…)
。换句话说,在调用此类方法时,此
必须引用保存
的实例,这是一个基本的误解
定义为Save.prototype.clickedFileSave
的方法是类/对象Save
的一部分,可以在Save
的实例上调用:
var game = new Game(...);
var save = new Save(game);
save.clickedFileSave();
Save.prototype.clickedFileSave.apply(save);
除非将Save
的实例传递给原型,否则不能直接通过原型调用它:
var game = new Game(...);
var save = new Save(game);
save.clickedFileSave();
Save.prototype.clickedFileSave.apply(save);
您得到的错误意味着.getGame(…)
也是一种保存方法,定义为Save.prototype.getGame
,并在单击文件保存中引用this.getGame(…)
。换句话说,在调用此类方法时,此
必须引用保存
的实例