闭包(closure):指有权访问另一个函数作用域中变量的函数,即可以访问另一个

函数中的局部变量

1、在函数内部再创建一个函数

202109241632489867621019

控制台:

202109241632489892191116

里面的函数可以访问外部函数的局部变量

2、查看有没有闭包的产生

(1)打开控制台的Sources,为fn函数打上断点,可以看到scope作用域是Global(全局作用域)

202109241632490315185086-1653373977630

然后点击下一步:

202109241632490500361037-1653373982546

再点击下一步:执行到fn函数

202109241632490536114052

再点击下一步:出现闭包

202109241632490585869466

3、如何在外面访问另一个函数的局部变量

必须return一个函数,要不然f()函数就无法调用

202109241632491214999555

控制台:

202109241632491272270794