首页 > 代码库 > 什么是js闭包

什么是js闭包

闭包就是能够读取函数内部局部变量的函数---也就是一个函数内部的函数

 

闭包的作用

获取函数内部的变量和使内部变量永远保存在内存中

function f1(){

  var n = 1;

  add = function(){n+=1;}

  function f2(){

    console.log(n);

  

  }

  return f2;

}

var result = f1();// 当把闭包函数f1()赋值给一个全局变量时,f1()函数所依赖的变量n具有了全局变量的特性(始终保存在内存中)

result();----->1

add();

result();--->2

什么是js闭包