我不完全確定「function x(){}」或「this.x = function(){}」之間的區別,但我必須製作一個面向對象的JavaScript,這樣的:Javascript function organization
function PROJECT(){
...
...
...
this.main_call=function(...){ return this.recursive_call(...); }
this.recursive_call=function(...){
...
var local,variables;
function helper(...,ref){
...
ref.recursive_call(...);
}
...
helper(...,this);
...
}
}
x=new PROJECT();
x.main_call(input);
這裏我的問題是,這是否是良好的作風,或者如果有一些方法我可以調用輔助函數(這是用來停止一遍又一遍地重複相同的代碼),而沒有經過「這「指針。我有點擔心,因爲helper函數已經訪問了recursive_call中的所有局部變量,但是如果我嘗試直接訪問this.recursive_call,它會引發錯誤。我在嘗試聲明this.helper = function(...){...}時遇到了變量覆蓋的問題。