我有什么是我相信一个非常基本的JavaScript问题,因为我挣扎的一些愚蠢的原因。了解javascript对象
如果您可视化下面的对象。我如何从'init'函数内调用一个函数?
TC.design = {
init : function(){
//How would I run the loadPage function here?
},
loadPage : function(){
}
}
我试过this.loadPage();我期望能够工作,但它返回未定义。
我显然不是在这里掌握一些基本的东西,希望有人能解释。
编辑:现在这是解决...
由于约瑟夫·西尔伯和火箭我已经意识到我的错误...
的问题又出现了,由于的一个误区javascript .call()函数。我打电话init
与TC.design.init.call()
,我现在明白是不正确的。我的歉意....
你是如何调用'init'?当你这样做时,你可能会改变'this'的价值。 – 2012-07-17 22:17:13
'this.loadPage()'应该工作:http://jsfiddle.net/85AWT/ – 2012-07-17 22:17:29
当然'this.loadPage()'工作。由于您返回了“undefined”(这可能意味着您没有在'loadPage'中使用'return'关键字,就像您向我们展示的代码中那样),您会得到'undefined'。注意你'undefined'实际上就是你**得到的**。这意味着'loadPage'被触发。否则,您的代码会引发异常。 – freakish 2012-07-17 22:19:54