在chrome,js在debug调试时出了一个问题,这是chrome的bug吗

https://img.mukewang.com/5ca1c0fe000156c405020143.jpg

下面这行注释掉时,控制台打印scope会报错
但放开时,就能打印出来
我理解无论是否是否有下面这行,内部都应该持有外层scope的引用,
这是chrome的优化机制吗?

慕丝7291255
浏览 398回答 1
1回答

温温酱

虽然有怀疑精神可能是个好习惯,但是我还是想说,不要动不动就怀疑这是不是个bug,尤其是对chrome这种成熟工具,即使有bug,也基本不可能会由你找出来,特别是在这么简单的场景中。这个是闭包的基本特性。内层作用域确实可以访问外层作用域中的变量,但前提是必须形成闭包(只有全局变量除外)。你注释掉之后,scope就不在闭包中了,当然无法访问到。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript