Почему модель onbone.js 'on ()' принимает 'this' в качестве последнего параметра, если почти всегда это будет?

Я только вхожу в Backbone, и одну вещь, которую я не понимаю, это то, почему метод on () для моделей всегда принимает три аргумента - событие, обработчик и контекст.

Кажется, что почти всегда «это» используется для контекста, и я не видел никакого другого использования. Даже если бы и были, так как я еще не видел, это должно быть довольно редко.

Поэтому мой вопрос: когда кто-то использует контекст, отличный от «this», и почему Backbone спроектирован таким образом? Кстати, я понимаю, зачем вам нужно предоставлять контекст, просто мне интересно, почему в синтаксисе метода указано, что я использую три аргумента вместо того, чтобы сделать последний аргумент необязательным - который, кажется, всегда «this» и чувствует себя избыточным. Я уверен, что что-то упустил. Пожалуйста, кто-нибудь, помогите мне понять. Спасибо!

[РЕДАКТИРОВАТЬ] Почему нельзя сделать что-то вроде:

model.on = function(event, callback){
  model.on_with_three_args.call(this, event, callback, this);
});

model.on_with_three_args = function(event, callback){
  /* whatever the on() is supposed to do */
});

Ответы на вопрос(1)

Ваш ответ на вопрос