Ref: 为什么要用闭包?

背景

闭包是自带运行环境的函数

发哥是自带背景音乐的男人~

就是有权访问另一个函数作用域的变量的函数。

 

函数式编程的闭包,就是函数的调味包。
方便用户调用函数。不必为了维护繁杂的外部状态而烦恼。

 

我们常见的闭包形式就是:【基于静态作用域的一个编程技巧】

(1) a 函数套 b 函数,

(2) 然后 a 函数返回 b 函数,

这样 b 函数在 a 函数以外的地方执行时,依然能访问 a 函数的作用域。

其中 “b 函数在 a 函数以外的地方执行时” 这一点,才体现了闭包的真正的强大之处。

 

静态作用域

Ref: 浅谈静态作用域和动态作用域 

Ref: JavaScript 词法、静态、动态作用域初级理解

 

若干需要关注点(概念)

  1)执行环境(作用域)函数执行环境 变量作用域

  )函数作用域和声明提前

  )自由变量

  )词法作用域和静态作用域

  5)动态作用域
View Code

相关文章: