是否可以爲變量分配自調用功能模塊,以便變量引用在沒有()運算符的情況下觸發調用該函數。我希望變量具有基於功能模塊中代碼的最新值。javascript - 我們是否可以自行調用分配給變量的功能模塊
的代碼可能是
count = 0
var x = function(){ return count }();
alert x; // should give 0
count = 7
alert x ; // should give 7
感謝
是否可以爲變量分配自調用功能模塊,以便變量引用在沒有()運算符的情況下觸發調用該函數。我希望變量具有基於功能模塊中代碼的最新值。javascript - 我們是否可以自行調用分配給變量的功能模塊
的代碼可能是
count = 0
var x = function(){ return count }();
alert x; // should give 0
count = 7
alert x ; // should give 7
感謝
可以通過吸氣來實現這種行爲,使用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
它可以在所有瀏覽器上工作,即6 ... – coool 2012-03-13 20:25:35
您在編輯的問題中描述的**無法在瀏覽器JavaScript中實現**。函數調用的省略參數在語法上無效。 – 2012-03-13 20:31:42
我想你想要一個get ter ... – 2012-03-13 20:24:17