我不完全确定“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(...){...}时遇到了变量覆盖的问题。