作用域:是指对某一变量和方法具有访问权限的代码空间,也就是变量或函数起作用的区域。包括全局作用域和局部作用域。
全局作用域:任何地方都能访问到的对象拥有全局作用域。
1.最外层函数和变量。
2.未定义直接赋值的变量。
3.window对象的属性
作用域链:在查找变量的时候会先从自身的作用域区域查找,找不到再到上一级的作用域查找,如果还没找到,到全局作用域区查找,这样就形成了作用域链。
闭包:如果某个函数被他的父函数只外的一个变量,就会形成闭包。
闭包的作用:就是保存自己私有的变量,通过接口(方法)给外部使用,但外部不能直接访问该变量。