Ver Mensaje Individual
  #3 (permalink)  
Antiguo 01/02/2016, 10:51
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 6 meses
Puntos: 977
Respuesta: Pasar de php a javascript en una función

A diferencia de PHP, en JavaScript las variables pueden o no ser declaradas. Se declaran colocando la palabra var antes de ellas y un espacio que las separe. Si las declaras, defines su alcance. Por ejemplo, si declaras variables dentro de una función, no podrás utilizarlas fuera de ella, pero si las declaras fuera de cualquier función, su ámbito será global o público y podrás utilizarlas incluso dentro de las funciones. Te aconsejo declararlas, tal y como lo indica el manual.

Código Javascript:
Ver original
  1. var nombre = "Juan", edad = 30;

Como veo que recibes valores mediante el método GET, puedes tomarlos desde la URI. El siguiente algoritmo te sirve para eso:
Código Javascript:
Ver original
  1. var search = location.search,
  2.     pos = search.indexOf("?"),
  3.     query = search.substr(pos + 1).split("&"),
  4.     $_GET = {}, prop, par;
  5.  
  6. for (prop in query){
  7.     par = query[prop].split("=");
  8.     $_GET[par[0]] = par[1];
  9. }

En la primera línea obtenemos la cadena de consulta de la URI (location.search) la cual posee el "?" que separa la cadena de consulta del resto de la URI, como en http://www.ejemplo.com?foo=bar&bin=baz. Enseguida, tomamos la posición que ocupa el "?" (.indexOf()) en el valor previamente tomado. A continuación, tomamos la parte de la cadena de consulta (.substr()) que empieza desde la siguiente ubicación a partir del "?", lo que en el ejemplo sería foo=bar&bin=baz y ya teniendo esta cadena, la separamos a partir del "&" (.split()), generándose un array con cada par variable-valor, resultando en algo como esto: ["foo=bar", "bin=baz"].

Luego de declarar algunas variables, procedemos a recorrer el array previamente generado. En cada iteración, separamos a cada par variable-valor a partir del signo de igualdad, obteniendo un array en el cual el nombre de la variable ocupará la posición cero y el valor, la posición uno. Se los asignamos a $_GET de tal forma que el nombre de la variable ahora será un atributo del objeto literal $_GET, mientras que el valor será el que le corresponda.

El equivalente de la función str_replace() es el método .replace(), el cual, para tu caso, tendrás que utilizarlo así:
Código Javascript:
Ver original
  1. s.replace(":", "");

Aunque viendo la secuencia de reemplazos, sería mejor si utilizarás una expresión regular, misma que puedes utilizar con el método en mención.
Código Javascript:
Ver original
  1. s.replace(/[":\.,;(Gs)+]+/g, "");

En esa línea se eliminarán todos los valores en cuestión y así evitarías colocar tantas instrucciones para hacer lo mismo.

Y para verificar si una variable está definida y que su valor no sea nulo, necesitas comprobar que su tipo (typeof) no sea undefined, es decir, indefinido, pero como veo que buscas obtener lo contrario, solo tendrías que hacer esto:
Código Javascript:
Ver original
  1. if (typeof variable == "undefined"){
  2.     //La variable no está definida
  3. }

El resto de operaciones se realizan de la misma manera.

Un saludo
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand