Split y analizar window.location.hash

Tengo problemas para dividir y analizar window.location.hash correctamente.

En primer lugar, obtenemos algunos parámetros en hash, por ejemplo:

#loc=austria&mr=1&min=10&max=89

Como seguramente verá, ha sido creado para la búsqueda. Cuando el usuario hace clic en la página de enlace de paginación, se vuelve a cargar con el hash. Hasta aquí todo bien

Creé la función initialise () que llama cada vez que hay un hash en la URL:

if (window.location.hash) {
    var params = (window.location.hash.substr(1)).split("&");

    for (i = 0; i < params.length; i++)
    {
        var a = params[i].split("=");
        // Now every parameter from the hash is beind handled this way
        if (a[0] == "loc")
        {
            locationList(a[1]);
        }
    }
}

Everythig casi funciona ... Cuando elijo todos los parámetros de búsqueda, se corta el hash ... Por una razón desconocida para mí. Traté de usarif( params.indexOf('loc') ) en lugar dea[0] == "loc" sin suerte.

¿Podrías echarme una mano?

Edita
Por supuesto, estaba usando var a = ... en el bucle, solo fue un error de copiar y pegar.

Respuestas a la pregunta(4)

Su respuesta a la pregunta