Código de JavaScript - Convierte una fecha en formato español a ingles

Versión 1
estrellaestrellaestrellaestrellaestrella(4)

Publicado el 7 de Febrero del 2013gráfica de visualizaciones de la versión: Versión 1
27.187 visualizaciones desde el 7 de Febrero del 2013
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
    /**
     * Funcion que devuelve true o false dependiendo de si la fecha es correcta.
     * Tiene que recibir el dia, mes y año
     */
    function isValidDate(day,month,year)
    {
        var dteDate;
 
        // En javascript, el mes empieza en la posicion 0 y termina en la 11
        // siendo 0 el mes de enero
        // Por esta razon, tenemos que restar 1 al mes
        month=month-1;
        // Establecemos un objeto Data con los valore recibidos
        // Los parametros son: año, mes, dia, hora, minuto y segundos
        // getDate(); devuelve el dia como un entero entre 1 y 31
        // getDay(); devuelve un num del 0 al 6 indicando siel dia es lunes, 
        // martes, miercoles ...
        // getHours(); Devuelve la hora
        // getMinutes(); Devuelve los minutos
        // getMonth(); devuelve el mes como un numero de 0 a 11
        // getTime(); Devuelve el tiempo transcurrido en milisegundos desde el
        // 1 de enero de 1970 hasta 
        // el momento definido en el objeto date
        // setTime(); Establece una fecha pasandole en milisegundos el valor de esta.
        // getYear(); devuelve el año
        // getFullYear(); devuelve el año
        dteDate=new Date(year,month,day);
 
        //Devuelva true o false...
        return ((day==dteDate.getDate()) && (month==dteDate.getMonth()) && (year==dteDate.getFullYear()));
    }
 
    /**
     * Funcion que recibe una fecha en formato español "21/01/2013" y la devuelve
     * en formato ingles "2013/01/21"
     * Tiene que recibir:
     *  - fecha en formato español (21/01/2013)
     *  - formato de respuesta:
     *      1 - fecha en formato cadena
     *      2 - objeto fecha
     * Devuelve vacio si la fecha es erronea
     */
    function convertDateEsToEn(dateEs,formatReturn)
    {
        var patron=new RegExp("^([0-9]{1,2})([/])([0-9]{1,2})([/])(19|20)+([0-9]{2})$");
 
        // Validamos que la fecha sea correcta en el formato español segun
        // la expresion regular
        if(dateEs.search(patron)==0)
        {
            values=dateEs.split("/");
            // Revisamos que la fecha sea correcta
            if(isValidDate(values[0],values[1],values[2]))
            {
                // devuelve la fecha en formato ingles
                if(formatReturn==2)
                {
                    // puedes devolver un objeto fecha para trabajar con el
                    return new Date(values[2],(parseInt(values[1])-1),values[0]);
                }else{
                    // puedes devolver simplemente la fecha en formato cadena
                    return values[2]+"/"+values[1]+"/"+values[0];
                }
            }
        }
        return "";
    }
</script>
</head>
 
<body>
<div>
    Indica una fecha en formato (dd/mm/yyyy): <input type="text" size="12" maxlenght="10" onkeyup="document.getElementById('dateEN').innerHTML=convertDateEsToEn(this.value,2);">
</div>
<div>Fecha en formato (yyyy/mm/dd): <span id="dateEN"></span></div>
</body>
</html>



Comentarios sobre la versión: Versión 1 (4)

Peter
6 de Febrero del 2015
estrellaestrellaestrellaestrellaestrella
Una cuestión: si JavaScript devuelve el mes de 0 a 11, lo lógico no sería sumar uno al mes para que nos devuelva el mes correcto?
Responder
Imágen de perfil
7 de Febrero del 2017
estrellaestrellaestrellaestrellaestrella
Si exacto!!! si la fecha la coges del sistema tienes que sumarle uno, pero si lo único que hace es convertir una fecha que tu le das en formato español, no tienes que sumar ningún valor, solo cambias el formato!!
Responder
Leonardo
6 de Febrero del 2017
estrellaestrellaestrellaestrellaestrella
Buen día amigo
Y si quiero ejecutar el archivo de Java desde la consola de Windows CMD como lo hago?
Responder
Imágen de perfil
7 de Febrero del 2017
estrellaestrellaestrellaestrellaestrella
Esto es javascript no java!!!
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s2296