我讀過JavaScript沒有真正具有「靜態」變量(當我說「靜態」時,我的意思是程序編程風格,就像C,而不是C++)如何調用私人功能?
我設法得到這段代碼從計算器這個鏈接部分: I've Heard Global Variables Are Bad, What Alternative Solution Should I Use?
var FOO = (function() {
var my_var = 10; //shared variable available only inside your module
function bar() { // this function not available outside your module
alert(my_var); // this function can access my_var
}
return {
a_func: function() {
alert(my_var); // this function can access my_var
},
b_func: function() {
alert(my_var); // this function can also access my_var
}
};
})();
如何調用函數「欄中的」間接地,如果在所有有可能?
如果有的話,JavaScript中的* all *功能是「靜態的」。它們不受特定對象的約束。 'this'的值僅僅來自它們如何被調用,並且創建的閉包是每個函數。爲「FOO.bar」命名一個函數就是這樣 - 給它一個「穩定的」(商定的)標識符。 – 2011-12-24 07:12:30