首页 > 其他 > 详细

全局函数是否存在闭包?

时间:2019-01-24 14:17:50      阅读:189      评论:0      收藏:0      [点我收藏+]

正在学习这一章节,看到这么一段话:

技术分享图片

就想说自己也写个闭包试试看:

let len = 0;
function foo() {
    len++;
    setTimeout(() => {
       len--;
    }, 1000);
}
foo();

  

然后在浏览器里打了断点,发现并没有出现所谓的闭包。

技术分享图片

 

所以寻思着是不是作者错了,全局作用域中是没有闭包的?于是就去GitHub上的issue中找类似的问题,没想到还真有人提了。

技术分享图片

 

技术分享图片

 

链接:https://github.com/getify/You-Dont-Know-JS/issues/1321

正如作者所说,全局作用域闭包不是可明显观察到的,但是他认为所有的函数在其所在的封闭词法作用域中都是有闭包的,当然,包括全局函数。

以上,权当是mark一下吧。

虽然作者释疑了,但还是想知道是否有方法可以验证作者的说法,希望大家可以留言,提供帮助,谢谢!

全局函数是否存在闭包?

原文:https://www.cnblogs.com/lwl0812/p/10313910.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!