关闭没有返回任何东西

时间:2015-12-10 03:20:13

标签: javascript

我正在读一本书,这里有一个关闭的例子

function newFunc(fn) {
    fn();
}

function foo() {
    var a = 2;

    function innerFunc() {
        console.log(a); // 2
    }

    newFunc(innerFunc);
}

但它不会返回2. 它显示空白是控制台。那是为什么?

1 个答案:

答案 0 :(得分:2)

您需要调用foo函数,该函数将newFunc作为参数调用innerFunc

function newFunc(fn) {
  fn();
}

function foo() {
  var a = 2;

  function innerFunc() {
    console.log(a); // 2
  }

  newFunc(innerFunc);
}

foo(); // Invoke foo function