2012-03-13 21 views
1

是否可以爲變量分配自調用功能模塊,以便變量引用在沒有()運算符的情況下觸發調用該函數。我希望變量具有基於功能模塊中代碼的最新值。javascript - 我們是否可以自行調用分配給變量的功能模塊

的代碼可能是

count = 0 
var x = function(){ return count }(); 
alert x; // should give 0 
count = 7 
alert x ; // should give 7 

感謝

+1

我想你想要一個get ter ... – 2012-03-13 20:24:17

回答

2

可以通過吸氣來實現這種行爲,使用Object.defineProperty,例如:

// Add a `somemethod` property to `window` 
Object.defineProperty(window, 'somemethod', { 
    get: function() { 
     return Math.random(); 
    } 
}); 
console.log(window.somemethod); 
console.log(window.somemethod); // Different value 
+0

它可以在所有瀏覽器上工作,即6 ... – coool 2012-03-13 20:25:35

+0

您在編輯的問題中描述的**無法在瀏覽器JavaScript中實現**。函數調用的省略參數在語法上無效。 – 2012-03-13 20:31:42

相關問題