Skip to content

Commit 4b81b0e

Browse files
committed
#15 - JavaScript
1 parent e055886 commit 4b81b0e

File tree

1 file changed

+74
-0
lines changed

1 file changed

+74
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
const funcionAsincrona = async (nombre, tiempo) => {
2+
console.log(`La función "${nombre}" comienza. Duración esperada: ${tiempo} segundos.`)
3+
const inicio = new Date();
4+
console.log(`Inicio: ${inicio.toLocaleTimeString()}`);
5+
6+
await new Promise(resolve => setTimeout(resolve, tiempo * 1000))
7+
8+
const fin = new Date();
9+
console.log(`La función "${nombre}" ha finalizado.`);
10+
console.log(`Fin: ${fin.toLocaleTimeString()}`);
11+
}
12+
13+
funcionAsincrona("Proceso 1", 5)
14+
15+
// DIFICULTAD EXTRA
16+
const funcionC = async () => {
17+
console.log('La función C comienza. Duración esperada: 3 segundos.')
18+
const inicio = new Date();
19+
console.log(`Inicio: ${inicio.toLocaleTimeString()}`);
20+
21+
await new Promise(resolve => setTimeout(resolve, 3000))
22+
23+
const fin = new Date();
24+
console.log(`La función C ha finalizado.`);
25+
console.log(`Fin: ${fin.toLocaleTimeString()}`);
26+
}
27+
28+
const funcionB = async () => {
29+
console.log('La función B comienza. Duración esperada: 2 segundos.')
30+
const inicio = new Date();
31+
console.log(`Inicio: ${inicio.toLocaleTimeString()}`);
32+
33+
await new Promise(resolve => setTimeout(resolve, 2000))
34+
35+
const fin = new Date();
36+
console.log(`La función B ha finalizado.`);
37+
console.log(`Fin: ${fin.toLocaleTimeString()}`);
38+
}
39+
40+
const funcionA = async () => {
41+
console.log('La función A comienza. Duración esperada: 1 segundos.')
42+
const inicio = new Date();
43+
console.log(`Inicio: ${inicio.toLocaleTimeString()}`);
44+
45+
await new Promise(resolve => setTimeout(resolve, 1000))
46+
47+
const fin = new Date();
48+
console.log(`La función A ha finalizado.`);
49+
console.log(`Fin: ${fin.toLocaleTimeString()}`);
50+
}
51+
52+
const funcionD = async () => {
53+
console.log('La función D comienza. Duración esperada: 1 segundos.')
54+
const inicio = new Date();
55+
console.log(`Inicio: ${inicio.toLocaleTimeString()}`);
56+
57+
await new Promise(resolve => setTimeout(resolve, 1000))
58+
59+
const fin = new Date();
60+
console.log(`La función D ha finalizado.`);
61+
console.log(`Fin: ${fin.toLocaleTimeString()}`);
62+
}
63+
64+
const main = async () => {
65+
const C = funcionC()
66+
const B = funcionB()
67+
const A = funcionA()
68+
69+
await Promise.all([C, B, A])
70+
71+
const D = funcionD()
72+
}
73+
74+
main()

0 commit comments

Comments
 (0)