在没有括号的情况下调用javascript函数

时间:2015-04-02 08:32:43

标签: javascript jquery function

当我阅读一些jquery代码时,我在其中一个小部件中发现了这个

    option: {
        _page: this._getPage,
        _panelInner: this._getPanelInner()
    },
    _getPage : function(){ //code goes here that returns something..},
    _getPanelInner : function(){ //code goes here that returns something..}

我想知道如何在没有括号的情况下调用第一个this._getPage函数。如果可以像这样调用函数,那么为什么用括号调用下一个函数_getPanelInner

2 个答案:

答案 0 :(得分:3)

它没有被调用,它只是对函数的引用,所以稍后你可以这样做:

option._page();

答案 1 :(得分:3)

_panelInner将保留_getPanelInner函数返回的值,而_page引用保存到{{1}功能。这意味着可以通过以下方式之一调用该函数:

  • _getPage
  • option._page()

这两个函数调用都会执行相同的函数,但该函数不会自动调用(根据显示的代码)。