我想通過試用我的控制檯和plunker來看到隱含的全局變量是如何工作的。隱含的全局變量和全局對象
我創建一個自調用函數,
(function() {
toto = 1;
})();
按照書我讀,
... implied globals are technically not real variables, but they are properties of the global object.
我想看看這個函數調用後,我可以作爲全局對象的屬性來訪問toto - 在瀏覽器中,它是window
。
當我使用hasOwnProperty('toto')
(通過直接在控制檯中輸入),我得到了錯誤。 我想我會使用in
,事實上,toto是「在」窗口(所以,它不是在窗口本身,而是它的一個子對象)
你能說一些嗎? 任何想法如何使用Chrome Web Tools來檢查在任何給定時間聲明的所有變量的狀態?
無法重現:http://jsfiddle.net/tbn2mzar/顯示爲「true」。 – JJJ 2014-10-01 19:58:08
我在Chrome控制檯中嘗試了這一點,並在窗口和window.hasOwnProperty(「toto」)''返回'true'中都「toto」。你能否給我們更多關於如何重現這種行爲的指示? – 2014-10-01 20:01:12
好吧,這很有趣。當你試圖從控制檯窗口直接得到這個值,你會得到錯誤..這很奇怪嗎? – 2014-10-01 20:01:22