鍍金池/ 問(wèn)答/HTML/ 在chrome,js在debug調(diào)試時(shí)出了一個(gè)問(wèn)題,這是chrome的bug嗎

在chrome,js在debug調(diào)試時(shí)出了一個(gè)問(wèn)題,這是chrome的bug嗎

clipboard.png
下面這行注釋掉時(shí),控制臺(tái)打印scope會(huì)報(bào)錯(cuò)
但放開(kāi)時(shí),就能打印出來(lái)
我理解無(wú)論是否是否有下面這行,內(nèi)部都應(yīng)該持有外層scope的引用,
這是chrome的優(yōu)化機(jī)制嗎?

回答
編輯回答
伴謊

雖然有懷疑精神可能是個(gè)好習(xí)慣,但是我還是想說(shuō),不要?jiǎng)硬粍?dòng)就懷疑這是不是個(gè)bug,尤其是對(duì)chrome這種成熟工具,即使有bug,也基本不可能會(huì)由你找出來(lái),特別是在這么簡(jiǎn)單的場(chǎng)景中。

這個(gè)是閉包的基本特性。內(nèi)層作用域確實(shí)可以訪問(wèn)外層作用域中的變量,但前提是必須形成閉包(只有全局變量除外)。你注釋掉之后,scope就不在閉包中了,當(dāng)然無(wú)法訪問(wèn)到。

2018年1月7日 15:59