Итак, у меня есть класс, который позволяет называть его A. Для этого класса я написал несколько функций, которые я могу назвать так:
var a = new A();
a.getSomething();
a.putSomething();
a.delSomething();
И так далее. Теперь я подумал, что я бы немного его организовал. Поэтому он не стал бы слишком суматошным и выглядел бы как-то вроде этого:
a.something.get();
a.something.put();
a.something.del();
И вот как я пытался добиться этого:
A.prototype.something = {
get: function(){...},
put: function(){...},
del: function(){...}
};
Но для этих функций (get, put и del) по-прежнему необходимо обращаться к общим объектам/функциям, найденным в A, поэтому мне нужна ссылка на A, но я не знаю, как это можно достичь.
Один из вариантов, который я нашел, выглядит следующим образом:
A.prototype.something = function(){
var that = this;
return {
get: function(){...},
...
};
};
И "это" будет использоваться в этих (get, put и del) функциях вместо 'this'. Но это означало бы, что я должен был бы назвать эти функции таким образом:
a.something().get();
...
Что мне не очень нравится. Так что я могу организовать эти вещи так, как я изначально планировал?