一個功能,我創建了以下對象:執行給出一個變量
function Calculator() {
//some code here, including object variables and functions, such as:
this.add = function(x) {
//again, irrelevant code
}
//similar methods
}
var calc = new Calculator();
然後,我試着做到以下幾點:
var met = calc.add;
met(5);
但沒有奏效。 (我已經檢查了所有 - 變量'met'是類型'function',當我「警告」它是確定的時,它會提示正確的字符串 - function(x){...}
等。但是調用met(7)會什麼都沒有,同時呼籲calc.add(7)
增加數)
有誰知道爲什麼,要不我怎麼能解決這個問題? (我能解決這個問題?)
您_say_的'add'方法是無關緊要的,但爲了安全起見函數體:你能包括它無論如何呢?如果你正在訪問閉包變量或對象屬性,那麼這就是你的問題......無論如何,你調用方法的方式確實意味着該方法依賴於對象的其他屬性 –
這可能是一個範圍界定問題(http: //stackoverflow.com/questions/3127429/javascript-this-keyword)。發佈一些實際的代碼。 –
適合我。 –