js闭包
要到创建这个函数的那个作用域中取值——是“创建”,而不是“调用”,切记切记
在fn函数中,取自由变量x的值时,要到哪个作用域中取?——要到创建fn函数的那个作用域中取——无论fn函数将在哪里调用。

我们拿文字总结一下取自由变量时的这个“作用域链”过程:
第一步,现在当前作用域查找a,如果有则获取并结束。如果没有则继续;
第二步,如果当前作用域是全局作用域,则证明a未定义,结束;否则继续;
第三步,(不是全局作用域,那就是函数作用域)将创建该函数的作用域作为当前作用域;
第四步,跳转到第一步。

相关文章:

  • 2022-01-01
  • 2021-12-09
猜你喜欢
  • 2021-11-22
  • 2021-05-03
  • 2021-11-16
  • 2021-06-12
相关资源
相似解决方案