使用回调嵌套在其他函数中的函数

时间:2016-01-10 17:59:23

标签: javascript function object callback

我有这样的结构:

var obj = {
   first: function(callback)
   {
      /* some code */

      var foo = function()  // i want to invoke this by callback
      {
        /* some code*/
      };

      if (callback) callback();         
   },

   second: function()
   {  
     /* some code */

     var bar = function()
     {
        /*some code */
     };
     bar();

     obj.first.foo();  // i want to invoke foo(), when bar() finishes it's job
   }
}
obj.first();
obj.second();

当我尝试通过回调调用foo()时,我得到未捕获的ReferenceError:foo未定义

我在理解JavaScript范围时遇到问题。当我处于完全其他函数时,如何调用嵌套在外部函数中的内部函数?

1 个答案:

答案 0 :(得分:-2)

您无法调用当前正在使用的功能。

您可以尝试以下内容:

var obj = somefunction;

somefunction{...}