這次帶給大家為什麼web開發需要避免使用全域變量,web開發中避免使用全域變數的注意事項有哪些,以下是實戰案例,一起來看一下。
全域變數帶來的問題主要是:隨著程式碼量的成長,過多的全域變數會導致程式碼難以維護,並且容易出bug。一兩個全域變數沒什麼大問題,你幾乎不可能做到零全局變數(除非你的JS程式碼不與任何其他JS程式碼產生聯繫,僅僅做了些自己的事情,這種情況十分少見,不代表沒有)。
如果是寫ES6程式碼,你會發現你很難去創建一個全域變量,除非你顯式的寫window.globalVar = 'something',ES6的模組機制自動幫你做好了作用域分割,使得你寫的程式碼維護性和安全性都變高了(老JSer不得不感慨現代的前端開發者真幸福)。
如果是ES6之前的程式碼,就得注意點了。例如你在函數中沒有用var來宣告的變數會直接掛載到全域變數中(這應該是JS基本知識),所以一般都是透過IIFE來實現模組化,對外只暴露一個全域變數(當然,你也可以使用RequireJS或YUI模組載入器等三方的模組管理工具來實現模組化)。
window.global = (function () { var exportVar = {}; // ES5没有let和const,故用var // add method and variable to exportVar return exportVar; })();
我相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是為什麼web開發中需要避免使用全域變數的詳細內容。更多資訊請關注PHP中文網其他相關文章!