Guardar variáveis fora de navigator.geolocation.getCurrentPosition? (javascript)

Estou tentando jogar com o escopo de js para extrair uma variável de navigator.geolocation.getCurrentPosition

var lat;
function callback (position) {
    lat = position.coords.latitude;
}
navigator.geolocation.getCurrentPosition(callback,fail,{timeout:10000});
// after getCurrentPosition succeeds
alert(lat); // this alerts null

O código acima não pode armazenar position.coords.latitude na variável lat devido ao escopo. Existe uma maneira de fazer isso?

questionAnswers(4)

yourAnswerToTheQuestion