Day4 闭包

2019-04-04  本文已影响0人  JSleefat

闭包允许函数访问定义时的词法作用域
回调函数基本上都是闭包
模块利用闭包隔离变量,暴露公共API(也会伴随IIFE立即执行函数组合使用)
模块:
1、为创建内部作用域而调用了一个包装函数
2、包装函数的返回值必须至少包括一个对内部函数的引用,这样就会创建涵盖整个包装函数内部作用域的闭包

作用域链基于调用栈,this指向调用方。
这是由于动态作用域,在运行时确定。

块作用域的替代方案

try{
  throw something;
} catch(a) {
  a=2;
  console.log(a);
}

具名函数比匿名函数更可取

上一篇下一篇

猜你喜欢

热点阅读