1
+ // 1º Ejercicio
2
+
3
+ let fechaActual : Date = new Date ( ) ; // Cojemos la fecha entera
4
+
5
+ console . log ( fechaActual ) ; // Mostramos la fecha
6
+
7
+ let fechaNacimiento : Date = new Date ( 2004 , 10 , 3 , 3 , 30 , 0 ) ; // (año, mes, día, hora, minuto, segundo)
8
+ // En TS y JS los meses empiezan en el 0 y acaban en el 11, por lo cual Noviembre es el 10.
9
+
10
+ console . log ( fechaNacimiento ) ; // Mostramos la fecha
11
+
12
+ let diferenciaAnhos : number = fechaActual . getFullYear ( ) - fechaNacimiento . getFullYear ( ) ;
13
+
14
+ console . log ( diferenciaAnhos ) ;
15
+
16
+ // Ejercicio Extra
17
+
18
+ // 1º Mostrando Día, mes y año
19
+ // El +1 es importante en el 'getMonth()' debido a que los meses en TS empiezan en el 0
20
+ console . log ( `${ fechaNacimiento . getDay ( ) } /${ fechaNacimiento . getMonth ( ) + 1 } /${ fechaNacimiento . getFullYear ( ) } ` ) ;
21
+
22
+ // 2º Mostrando Hora, minuto y segundo.
23
+ console . log ( `${ fechaNacimiento . getHours ( ) } /${ fechaNacimiento . getMinutes ( ) + 1 } /${ fechaNacimiento . getSeconds ( ) } ` ) ;
24
+
25
+ // 3º Mostrar por Día de año
26
+ function diaDelAnho ( fecha : Date ) : number {
27
+ let anhoPorDefecto = new Date ( fecha . getFullYear ( ) , 0 , 0 ) ;
28
+ let diferencia = ( fecha . getTime ( ) - anhoPorDefecto . getTime ( ) ) + ( ( anhoPorDefecto . getTimezoneOffset ( ) - fecha . getTimezoneOffset ( ) ) * 60 * 1000 ) ;
29
+ let dia = 1000 * 60 * 60 * 24 ;
30
+ return Math . floor ( diferencia / dia ) ;
31
+ }
32
+ console . log ( `${ diaDelAnho ( fechaNacimiento ) } ` ) ;
33
+
34
+ // 4º Mostrar por Día de la semana.
35
+ function nombreDiaSemana ( dia : number ) : string {
36
+ let diasSemana : string [ ] = [ 'Domingo' , 'Lunes' , 'Martes' , 'Miércoles' , 'Jueves' , 'Viernes' , 'Sábado' ] ;
37
+ return diasSemana [ dia ] ;
38
+ }
39
+ console . log ( `${ nombreDiaSemana ( fechaNacimiento . getDay ( ) ) } ` ) ;
40
+
41
+ // 5º Mostrar por Nombre del mes.
42
+ function obtenerNombreMes ( mes : number ) : string {
43
+ let meses : string [ ] = [ 'Enero' , 'Febrero' , 'Marzo' , 'Abril' , 'Mayo' , 'Junio' , 'Julio' , 'Agosto' , 'Septiembre' , 'Octubre' , 'Noviembre' , 'Diciembre' ] ;
44
+ return meses [ mes ] ;
45
+ }
46
+ console . log ( `${ obtenerNombreMes ( fechaNacimiento . getMonth ( ) ) } ` ) ;
47
+
48
+ // 6º Mostrar FECHA de nacimiento en forma de String
49
+ console . log ( fechaNacimiento . toLocaleDateString ( ) ) ;
50
+
51
+ // 7º Mostrar HORA de nacimiento en forma de String
52
+ console . log ( fechaNacimiento . toLocaleTimeString ( ) ) ;
53
+
54
+ // 8º Mostrar Día de la semana y día del mes
55
+ // Con este formato le podemos especificar más parámetros y como los queremos
56
+ console . log ( `${ fechaNacimiento . toLocaleDateString ( 'es-ES' , { weekday : 'long' } ) } , ${ fechaNacimiento . getDate ( ) } ` ) ;
57
+
58
+ // 9º Mostrar Nombre del mes, día del mes y año
59
+ console . log ( `${ fechaNacimiento . toLocaleDateString ( 'es-ES' , { month : 'long' } ) } ${ fechaNacimiento . getDate ( ) } , ${ fechaNacimiento . getFullYear ( ) } ` ) ;
60
+
61
+ // 10º Mostrar Día de la semana, día del mes, nombre del mes y año abreviados
62
+ console . log ( `${ fechaNacimiento . toLocaleDateString ( 'es-ES' , { weekday : 'short' , month : 'short' } ) } ${ fechaNacimiento . getDate ( ) } , ${ fechaNacimiento . getFullYear ( ) } ` ) ;
0 commit comments