JS基础之闭包

JS基础之闭包

  • 闭包
    • 闭包的目的
    • 闭包的优缺点

闭包

官方定义:
闭包是能够访问到自由变量的函数。
自由变量:能够在函数中使用,但是不是函数的参数,也不是内部的局部变量。

示例:

var a = 1;
function foo(){
	console.log(a);
}
foo();

闭包的目的

闭包的目的:

  • 在于功能的呈现
  • 在于能在当前函数中访问外部的变量=>沿着作用域链,访问别人的变量对象

涉及到执行上下文的两大概念:作用域链、变量对象。

闭包的优缺点

闭包优点:
可以动态的获取沿着作用域链的属性,属性获取方式便捷
缺点:
太便捷,容易忘掉去释放掉它,不容易垃圾回收。

好啦,这个知识点就到这里啦~
面试官问:就一、二、三、给他列出来~完结!

JS基础之闭包_第1张图片

你可能感兴趣的:(javascript,开发语言,ecmascript)