我更願意爲我的所有網站聲明一個Javascript文件。我正試圖減少全局變量的使用。我在下面的例子,在這兩種情況下,每個對象都有一個myName字段。Javascript全局變量或對象變量
- 我想知道它們何時初始化?
- 而在內存和效率方面哪一個更有效?
- 對於變量a,聲明a.myName與全局「var myName = Rebecca」相同?
var a = {
myName : 'Rebecca' ,
sayHello : function() {
console.log(this.myName);
}
};
var b = {
myName : function() {
return 'Rebecca';
},
sayHello : function() {
console.log(this.myName());
}
};
感謝
實際上,我準備在需要這些變量時使用我的內存和cpu。我只是想懶加載我的字符串變量。 – Cemo 2010-06-21 14:50:08
我是懶惰加載的狂熱粉絲,但據我所知,如果你想放棄大的「資源分配」(內存使用,CPU使用和/或執行時間),延遲加載只會有所幫助。使用一個只返回字符串的函數('「Rebecca」')將使用更多的內存,解析需要更長的時間,並且比使用直接字符串文本需要更長的時間。還有多少?那麼,可能非常非常少。我只是不會稱之爲最佳做法。 – Andrew 2010-06-21 14:57:33
也許你在開始的時候注意到了我的先決條件。我想爲我的所有網站只使用一個JavaScript文件。在所有其他頁面加載這些變量對我來說沒有意義。這就是爲什麼我開始考慮另一種選擇。 如何將這些數據存儲在某些變量中?緩存不是一個簡單的解決方案? – Cemo 2010-06-21 15:51:37