Ответ Роба - лучший ответ для вашей проблемы, но я хотел обратиться к тому, что вы написали в своем первоначальном вопросе:
Я знаю, что могу передать это в качестве аргумента handleOnClickConfirmed, но часть моего кода уже использует handleOnClickConfirmed, и я не хочу переписывать эти вызовы.
Параметры JavaScript всегда являются необязательными для интерпретатора. Например, если у вас есть функция:
function MyFunction(paramA, paraB) {
// do nothing
}
Все эти вызовы будут выполнены без ошибок:
MyFunction(1,2);
MyFunction(1);
MyFunction();
Таким образом, вы можете изменить handleOnClickConfirmed, чтобы он принимал необязательный параметр. Вот так:
function handleOnClickConfirmed(context) {
context = context || this;
// use context instead of 'this' through the rest of your code
}
Опять же, в данном конкретном случае, функция вызова является лучшим решением. Но техника, которую я обрисовал в общих чертах выше, хороша для использования в вашем наборе инструментов.