Foros del Web » Programando para Internet » Javascript »

Partir una cadena y guardarla en diferentes variables

Estas en el tema de Partir una cadena y guardarla en diferentes variables en el foro de Javascript en Foros del Web. Hola buen dia: Solicito la ayuda de algun experto que me oriente en como podria yo partir una cadena que obtengo de una caja de ...
  #1 (permalink)  
Antiguo 29/11/2007, 11:05
 
Fecha de Ingreso: abril-2007
Mensajes: 4
Antigüedad: 17 años
Puntos: 0
Partir una cadena y guardarla en diferentes variables

Hola buen dia:

Solicito la ayuda de algun experto que me oriente en como podria yo partir una cadena que obtengo de una caja de texto, para ser mas exacto el valor que estoy obteniendo es 1/9/2007
este valor quisiera yo partirlo y guardarlo en 3 variables
dia
mes
ano
pero quisiera que la funcion que use las encuentre por medio del /

se que php es:
$fecha = "12/01/2005";

list($dia,$mes,$anyo) = explode("/",$fecha);

echo $dia; // Imprime 12
echo $mes; // Imprime 01
echo $anyo; // Imprime 2005

pero quisiera saber como es con javascript...

Gracias por su ayuda

Hugo Martinez
  #2 (permalink)  
Antiguo 29/11/2007, 11:16
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Partir una cadena y guardarla en diferentes variables

Hola:

No existe nigún equivalente de list en javascript, pero si de explode...

f = fecha.split("/");

Con eso puedes referenciar la fecha como f[0] = día, f[1] = mes y f[2] = año.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 29/11/2007, 12:00
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: Partir una cadena y guardarla en diferentes variables

Cita:
Iniciado por caricatos Ver Mensaje
...
No existe nigún equivalente de list en javascript, pero si de explode...
...
No, por lo menos no en la versión de javascript que manejamos. Próximamente (si IE se va poniendo las pilas...) tendremos nuestra queridísima asignación desestructurada, con la que podremos hacer cosas de éstas, como se ve en el enlace:

Código PHP:
// intercambio de valores
var 1;
var 
3;
[
ab] = [ba];
// devolver varios valores
function f() {
  return [
12];
}
var 
ab;
[
ab] = f(); 
Y, por supuesto, el ejemplo que estamos buscando. Pongo el código completo para quien quiera probarlo en un FF2, es interesante:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<
head>
<
meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" />
</
head>

<
body>


 <
script type="application/javascript;version=1.7">

var 
fecha "12/01/2005";
[
diamesanyo] = fecha.split("/");
alert("Dia: "+dia+"\nMes: "+mes+"\nAño: "+anyo);

</script>

</body>
</html> 

No es lo mismo, pero a mi me ahorraría bastante código normalemente con los splits:
Código PHP:
Array.prototype.list = function() {
    var 
arguments.length;
    if( 
== this.length ) {
        for(var 
i=0i<ni++)
            
windowarguments[i] ] = this[i];
        return 
true;
    }
    else {
        
alert("Cantidad de argumentos mal dada.");
    }
}


var 
fecha "12/01/2005";
fecha.split("/").list("dia","mes","anyo");
alert("Dia: "+dia+"\nMes: "+mes+"\nAño: "+anyo); 
Es lo que se me ha ocurrido improvisando.



Pero hasta que llegue el 1.7, a esperar...



Un saludo
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #4 (permalink)  
Antiguo 29/11/2007, 12:09
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Partir una cadena y guardarla en diferentes variables

Hola:

derkenuke, muy interesante. Probado en firefox portable y muy bien.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:22.