Variables globales en Javascript
¿A que más de uno tuvo el mismo problema que yo?
Hablo de usar una función que tiene callback como $.post() de jQuery y no saber como recuperar los valores que se sesean en la respuesta de la petición.
Bueno es más bien de simple solución:
MAL:
$.post("urlDestino", { mandoAlgo : "cosas" },
function(resultado) {
var variableLocal = resultado
return variableLocal //--> esta variable no se va a ver jamas fuera de esta función
}, "json");
BIEN:
var variableGlobal;
$.post("urlDestino", {
mandoAlgo : "cosas"
},
function(resultado) {
var variableGlobal = resultado
return variableGlobal
}, "json");
Si todavía no te diste cuenta es tremendamente simple: definir las variables fuera de cualquier función.

Mi problema es el siguiente:
Tengo unos nombres en un vector donde el índice es el código de la persona. Ahora tengo dos funciones. En la primera realizo unos cálculos y envió a la segunda función tres variables, la primera un vector donde están los nombres, la segunda el índice, y la tercera es la variable global para que la actualice y me devuelva el nuevo nombre.
El proceso lo hace bien, es decir, envió las 3 variables busca en el arreglo y encuentra el nombre en la función de búsqueda, pero al retornarlo con return no devuelve el nombre encontrado. La variable de nombre la he definido global. La pregunta es. Cómo modificar el contenido de una variable global cuando se envía desde una función a otra para modificarla?. Gracias.