2012-07-27 32 views
0

在下面的代碼中使用局部變量不好嗎?如果是這樣,爲什麼?JavaScript和本地變量不好的做法?

var lib = new function() { 

    var localVariable; 

    this.publicCall = function (e) { 
     localVariable = e.variable; 
    }; 

    var privateCall = function (e) { 
     localVariable = e.variable; 
    }; 
}; 
+0

不,爲什麼會不好?這是一種方法來做私人變量在JS – Javier 2012-07-27 13:38:51

+0

@Javier感謝上帝的局部變量:) – 2012-07-27 14:00:46

回答

1

不,實際上我會說這看起來很不錯。

您想到什麼替代方案?一個全局變量?現在將是不好的做法。

+0

嗯,大多數時候我可以通過將它注入到我調用的函數的參數中傳遞變量,因此使用參數作爲主要傳輸,它只是看起來比使用本地變量更不可讀... – user1514042 2012-07-27 13:43:53

+0

注入是很好的,如果它阻止了依賴(即因爲它使單元測試更容易),但對於簡單的變量,沒有依賴性擔心,所以沒有真正的需要注入一切。局部變量很好。 – SDC 2012-07-27 15:09:04

1

不,這實際上是首選模式。局部變量應該總是在它們所需的範圍內定義。你絕對不應該用變量污染你的全球範圍,因爲這被認爲是一種不好的做法。

網上有很多資源可以幫助您瞭解變量的範圍。看看這SO question

相關問題