Как передать доп параметр в колбек функцию?
function foo(locationresult){};
navigator.geolocation.getCurrentPosition(foo,foo); //вызывает foo с параметром locationresult
Вопрос - можно как-то передать в foo что-то своё?
Ответы (1 шт):
Автор решения: Grundy
→ Ссылка
callback вызывается внутри функции, соответственно набор параметров также определяется внутри и к нему нет доступа.
Для передачи дополнительной информации можно использовать
замыкания
var variable = ...; function foo(locationresult){ variable // доступ к внешней переменной };использовать
bindvar fooBinded = foo.bind(context, arg1,arg2, ...)в этом случае будет проблема если функция использует
this, и вызывающая функция пытается ее задать.
определение функции должно поменяться на следующееfunction foo(arg1, arg2, ..., locationresult){