立即执行函数

54 阅读1分钟
var func = (function (a) {
    this.a = a
    return function (a) {
      a += this.a
      return a
    }
  })(function (a, b) {
    return a
  }(1, 2))
  func(4)

  // 简化为
  var func = (function (a) {
    this.a = a
    return function (a) {
      a += this.a
      return a
    }
  })(1)

  // 简化为
  varfunc = function (a) {
    a += 1
    return a
  }

  // 所以最后的答案是5