所以我想要访问的函数的基本设置是
(function (self, $) {
function init() {
...
}
function stuff() {...
}
self.onload = init;
}
})(window, jQuery);
如果可能,我如何从控制台调用任何这些功能?例如,我想做
stuff("things");
我的一个想法是完全删除包装游戏代码和自己运行init的函数,但我不知道如何让我的代码替换页面上已有的代码。
答案 0 :(得分:1)
您的函数位于一个闭包内,您必须将它们设置为全局或可从全局对象访问,以便可以立即从控制台访问它们。 e.g。
var myprogram = (function (self, $) {
function init() {
...
}
function stuff() {...
}
self.onload = init;
return {
stuff: stuff
};
})(window, jQuery);
现在您可以从控制台调用myprogram.stuff()
。但是,如果您没有进行测试,我不会建议这种封装中断。
您还可以使用debbuger设置断点,然后从控制台调用它们,这是我的建议,请参阅下面的链接以获取更多信息。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/debugger
答案 1 :(得分:0)
出于调试目的,您可以将功能添加到窗口范围,如下所示:
(function(self, $) {
function stuff() {
...
}
window.stuff = stuff; // Remove this line in production
})(window, jQuery);
现在您可以从控制台调用stuff()
。