Я не совсем уверен, в чем разница между словами "function x () {}" или "this.x = function () {}", но мне пришлось создать объектно-ориентированный JavaScript, который выглядит следующим образом:
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);
Мой вопрос здесь заключается в том, является ли это хорошим стилем или есть какой-то способ, которым я могу вызвать вспомогательную функцию (которая используется для остановки дублирования одного и того же кода снова и снова), не передавая указатель «this». Я немного обеспокоен тем, что вспомогательная функция уже обращается ко всем локальным переменным в recursive_call, но выдает ошибки, если я пытаюсь получить доступ к this.recursive_call напрямую. Я также столкнулся с проблемами с переопределением переменных при попытке объявить this.helper = function (...) {...}.