3
我在我的應用程序中有幾個變量,我必須在大多數閉包中使用變量,例如保存預加載請求的變量或保存當前應用程序狀態的變量(需要在不同的時間動態更改地方)。全局變量的模式
所以我的應用程序的結構是這樣的:
(function() {
var MainModule = (function() {
})();
var Utils = (function() {
})();
var Events = (function() {
})();
})();
我裏面創建MainModule
這些變量,但要改變它們,刪除它們,等等,裏面Utils
和Events
。我一直在思考兩個方面:
- 創建
Context
關閉,保持這些變量的數組,並有get()
和set()
訪問方法。 - 將這些變量作爲參數傳遞給閉包,但是我沒有解除它們,並且由於javascript將數組/對象傳遞給函數的方式導致困難。
我應該如何處理?
如果您停止使用這些IIFE,您的問題就會消失,因爲您會定期進行範圍確定。 – adeneo
你在'MainModule','Utils'和'Events'中有什麼?這聽起來像是你已經過分抽象了一些東西,並且正在努力成爲一個班級。 – Brad
你可以有一個'MainModule.exposedVariable'。所有其他模塊可以看到。 – Thilo