您好,登錄后才能下訂單哦!
怎樣獲取JavaScript中全局對象變量的方法?如果你剛好也有這個困惑,不妨參照這篇文章。閱讀完整文相信大家對JavaScript中全局對象變量的方法有了一定的認識。
全局變量在編程語言中一向被認為是一種不好的編程方法。但現實情況是,很多著名的項目都在大量的使用著全局變量,比如,MooTools就將大量的對象放到全局空間,像Browser
對象和$$
等。而最著名的jQuery也是用的全局變量。所以,“全局變量不好”這個理論實際上處于一種很可笑的狀態中。
而將全局變量暴露在外,讓用戶任意修改(除非是特意設計的),更是一種不好的編程習慣,這將對導致程序很難維護。那么,我們如何知道現有的全局變量空間里有哪些全局變量呢?其實方法很簡單:
// UPDATE: This method is too naive // Returns an array of window property names //keys(window); // Inject an iframe and compare its `contentWindow` properties to the global window properties (function() { var iframe = document.createElement('iframe'); iframe.onload = function() { var iframeKeys = Object.keys(iframe.contentWindow); Object.keys(window).forEach(function(key) { if(!(key in iframeKeys)) { console.log(key); } }); }; iframe.src = 'about:blank'; document.body.appendChild(iframe); })();
用上面的代碼我們可以做一下測試,你可以直接按功能鍵F12
來打開console,輸入上面的代碼,觀看輸出結果。你會發現,有些對象,比如window
, document
, top
, 和 location
都是JavaScript內置的,而很多其它的對象,都是第三方JavaScript代碼產生的。
看完這篇文章,你們學會獲取JavaScript中全局對象變量的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。