1
+ /*
2
+ * EJERCICIO:
3
+ * - Crea ejemplos de funciones básicas que representen las diferentes
4
+ * posibilidades del lenguaje:
5
+ * Sin parámetros ni retorno, con uno o varios parámetros, con retorno...
6
+ * - Comprueba si puedes crear funciones dentro de funciones.
7
+ * - Utiliza algún ejemplo de funciones ya creadas en el lenguaje.
8
+ * - Pon a prueba el concepto de variable LOCAL y GLOBAL.
9
+ * - Debes hacer print por consola del resultado de todos los ejemplos.
10
+ * (y tener en cuenta que cada lenguaje puede poseer más o menos posibilidades)
11
+ *
12
+ *
13
+ *
14
+ * Presta especial atención a la sintaxis que debes utilizar en cada uno de los casos.
15
+ * Cada lenguaje sigue una convenciones que debes de respetar para que el código se entienda.
16
+ */
17
+
18
+
19
+ //TIPOS DE FUNCIONES
20
+
21
+ //1. Funciones Declaradas (Function Declarations)
22
+
23
+ function suma ( a , b ) {
24
+ return a + b ;
25
+ }
26
+
27
+ //2. Funciones Expresadas (Function Expressions)
28
+ const resta = function ( a , b ) {
29
+ return a - b ;
30
+ }
31
+
32
+ //3. Funciones Flecha (Arrow Functions)
33
+ const multiplicacion = ( a , b ) => a * b ;
34
+
35
+ //4. Funciones Anónimas (Anonymous Functions)
36
+
37
+ function * contador ( ) {
38
+ let i = 0 ;
39
+ while ( true ) {
40
+ yield i ++ ;
41
+ }
42
+ }
43
+
44
+ //5. Funciones Asíncronas (Async Functions)
45
+
46
+ async function miFuncion ( ) {
47
+ const respusta = await fetch ( 'https://api.com' ) ;
48
+ return respusta . json ( ) ;
49
+ }
50
+
51
+ // 6. IIFE (Immediately Invoked Function Expressions)
52
+
53
+ ( function ( ) {
54
+ console . log ( 'Hola!' ) ;
55
+ } ) ( ) ;
56
+
57
+ // 7. Funciones dentro de funciones
58
+
59
+ function personal ( name ) {
60
+ this . name = name ;
61
+ }
62
+
63
+ // 8. Funciones ya creadas en el lenguaje
64
+
65
+ setTimeout ( ( ) => {
66
+ console . log ( 'Hola, mundo!' ) ;
67
+ } , 1000 ) ;
68
+
69
+
70
+ // DIFICULTAD EXTRA (opcional):
71
+ // * Crea una función que reciba dos parámetros de tipo cadena de texto y retorne un número.
72
+ // * - La función imprime todos los números del 1 al 100. Teniendo en cuenta que:
73
+ // * - Si el número es múltiplo de 3, muestra la cadena de texto del primer parámetro.
74
+ // * - Si el número es múltiplo de 5, muestra la cadena de texto del segundo parámetro.
75
+ // * - Si el número es múltiplo de 3 y de 5, muestra las dos cadenas de texto concatenadas.
76
+ // * - La función retorna el número de veces que se ha impreso el número en lugar de los textos.
77
+
78
+ const DF = ( string1 , string2 ) => {
79
+ let contador = 0 ;
80
+ for ( let i = 1 ; i <= 100 ; i ++ ) {
81
+ switch ( true ) {
82
+ case i % 3 === 0 && i % 5 === 0 :
83
+ console . log ( string1 + string2 )
84
+ break ;
85
+ case i % 3 === 0 :
86
+ console . log ( string1 ) ;
87
+ break ;
88
+ case i % 5 === 0 :
89
+ console . log ( string2 ) ;
90
+ break ;
91
+ default :
92
+ console . log ( i ) ;
93
+ contador ++ ;
94
+ break ;
95
+ }
96
+ }
97
+ return contador
98
+ }
0 commit comments