Skip to content

Commit 6146092

Browse files
authored
Merge pull request mouredev#2666 from IgleDev/main
#14 - TypeScript
2 parents 7f7e5c9 + 61184e7 commit 6146092

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed
+62
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
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

Comments
 (0)