Coger variables desde JavaScript

Este código está dividido en tres funciones:
_La primera(cogerVariable) coge una variable, se la debe pasar el nombre de la variable o su posición empezando desde 0; así la primera variable sería el 0, la segunda el 1 y así sucesivamente.
_La segunda(contarVariables) cuenta las variables que se han pasado a la página.
_La tercera(nombreVariable) hace lo mismo que la primera, pero en vez de pasar el resultado, coge el nombre de la variable.
Lo mas recomendable para este código por su tamaño y por su utilidad que lo puede hacer util para varias páginas es que esté en un .js para poder ser cogido fácilmente desde varias páginas

En el HEAD:
<script language="javascript">
//Su explorador no soporta java o lo tiene deshabilitado; esta pagina necesita javascript para funcionar correctamente<!–
//Copyright © McAnam.com

//coge una variable dada(por su número empezando desde 0 o su nombre)            
function cogerVariable(variable){

     var tipo = typeof variable;
     var direccion = location.href;

     if (tipo == "string"){
         var posicion = direccion.indexOf("?");
         posicion = direccion.indexOf(variable,posicion) + variable.length;
     }
     else if (tipo == "number"){
         var posicion=0;
         for (var contador = 0 ; contador < variable + 1 ; contador++){
             posicion = direccion.indexOf("=",++posicion);
             if (posicion == -1)posicion=999;
         }
     }
     if (direccion.charAt(posicion) == "="){
         var final = direccion.indexOf("&",posicion);
         if (final == -1){final=direccion.length;};
         return direccion.substring(posicion + 1,final);
     }
}

//Da la cantidad de elementos empezando desde 0
function contarVariables(){

     var direccion = self.location.href;
     var posicion = direccion.indexOf("?");

     for (var contador = -1 ; posicion != -1 ; ++contador){
         posicion = direccion.indexOf("=",++posicion);
     }

     if (contador < 0)contador=0;

     return contador;
}

//da el nombre de una variable
function nombreVariable(variable){

     var tipo = typeof variable;
     var direccion = location.href;

     if (tipo == "string"){
         var posicion = direccion.indexOf("?");
         if ((posicion > 0) && (direccion.indexOf(variable,posicion) > -1))
             posicion = direccion.indexOf(variable,posicion);
         else
             posicion = 0;
     }
     else if (tipo == "number"){
         var posicion = 0;
         posicion = direccion.indexOf("?");
         for (var contador = 0 ; ((contador < variable) && (posicion != -1)) ; contador++){
             posicion = direccion.indexOf("&", ++posicion);
         }
         posicion++;
     }
     if (posicion > 0){
         var final = direccion.indexOf("=",posicion);
         //alert(posicion + " , " + final);
         if (final == -1){final=direccion.length;};
         return direccion.substring(posicion,final);
     }

}

//–>
</script>

En el BODY:
<p>
     <input type="button" onclick="alert(‘Esta página tiene: ‘+contarVariables()+’ variables’)" value="Cuantas variables tiene esta página">
</p>

Leave A Comment?