1
00:00:01,290 --> 00:00:04,810
Ahora que sabemos qué son las funciones de orden superior,

2
00:00:04,810 --> 00:00:07,040
vamos a crear el nuestro propio,

3
00:00:07,040 --> 00:00:09,900
solo para demostrar cómo funcionan.

4
00:00:09,900 --> 00:00:11,850
Así que en esta lección, vamos a crear

5
00:00:11,850 --> 00:00:15,693
una función que acepta otras funciones como entrada.

6
00:00:17,470 --> 00:00:20,560
Pero para empezar, escribamos dos muy genéricos

7
00:00:20,560 --> 00:00:23,833
funciones que realizan transformaciones de cadenas simples.

8
00:00:26,100 --> 00:00:28,970
Así que voy a llamar a una palabra

9
00:00:29,830 --> 00:00:34,623
y esto simplemente reemplazará todos los espacios en una palabra.

10
00:00:38,190 --> 00:00:39,290
tan cuerda

11
00:00:40,390 --> 00:00:41,570
punto reemplazar

12
00:00:42,490 --> 00:00:45,190
y luego vamos a seleccionar todos estos espacios.

13
00:00:45,190 --> 00:00:47,030
Y recuerda por eso,

14
00:00:47,030 --> 00:00:49,160
necesitamos usar esta expresión regular

15
00:00:49,160 --> 00:00:52,750
con la bandera G y luego reemplazarlos

16
00:00:52,750 --> 00:00:54,593
simplemente con una cadena vacía.

17
00:00:56,120 --> 00:01:00,897
Y luego también lo convertimos a minúsculas.

18
00:01:02,690 --> 00:01:04,230
Bueno,

19
00:01:04,230 --> 00:01:05,400
entonces esta función aquí,

20
00:01:05,400 --> 00:01:09,050
lo que simplemente funciona en cualquier parte de nuestro código con cualquier cadena

21
00:01:09,050 --> 00:01:11,700
y toma una cadena y regresa

22
00:01:11,700 --> 00:01:14,153
uno nuevo sin ningún espacio en él.

23
00:01:16,110 --> 00:01:20,363
Bien, vamos a crear otra primera palabra superior,

24
00:01:21,720 --> 00:01:25,490
que también toma una cadena.

25
00:01:25,490 --> 00:01:26,780
Y entonces estas dos funciones,

26
00:01:26,780 --> 00:01:29,270
luego serán las funciones que pasemos

27
00:01:29,270 --> 00:01:31,720
en otra función.

28
00:01:31,720 --> 00:01:34,560
Bien, entonces primero necesitamos estos.

29
00:01:34,560 --> 00:01:36,710
Como su nombre lo dice, esta función

30
00:01:36,710 --> 00:01:39,960
aquí simplemente transformará la primera palabra

31
00:01:39,960 --> 00:01:42,810
de la cadena de entrada a mayúsculas.

32
00:01:42,810 --> 00:01:46,423
Entonces, primero dividamos la cadena.

33
00:01:48,640 --> 00:01:50,103
Así que por la cadena vacía,

34
00:01:51,027 --> 00:01:53,600
y luego tomaremos los resultados

35
00:01:53,600 --> 00:01:57,390
y reestructurarlo en la primera palabra.

36
00:01:57,390 --> 00:01:58,933
Y luego todas las otras palabras,

37
00:02:03,270 --> 00:02:05,763
Y luego devolver una nueva matriz a la que nos uniremos.

38
00:02:06,710 --> 00:02:09,420
Así que eso es primero en mayúsculas

39
00:02:09,420 --> 00:02:12,900
y aquí no estoy explicando exactamente cómo funciona todo esto,

40
00:02:12,900 --> 00:02:15,210
porque ya hablamos de estas cosas,

41
00:02:15,210 --> 00:02:16,273
en el último vídeo.

42
00:02:18,030 --> 00:02:21,200
Entonces repartimos los demás y también en la matriz.

43
00:02:22,220 --> 00:02:23,420
y luego nos unimos.

44
00:02:23,420 --> 00:02:26,140
Y así ves que todo lo que aprendimos antes

45
00:02:26,140 --> 00:02:27,800
en realidad es bastante útil,

46
00:02:27,800 --> 00:02:30,760
de nuevo como siempre, especialmente útil,

47
00:02:30,760 --> 00:02:34,810
es difundir el operador y la asignación destructiva.

48
00:02:34,810 --> 00:02:36,083
Como lo usamos aquí.

49
00:02:37,240 --> 00:02:39,590
Correcto, y aquí está en realidad el patrón de descanso.

50
00:02:41,960 --> 00:02:45,490
Muy bien, entonces tenemos estas dos funciones genéricas

51
00:02:45,490 --> 00:02:48,440
y ahora podemos crear una función de orden superior.

52
00:02:48,440 --> 00:02:53,133
Y esa función se llamará transformador.

53
00:02:55,030 --> 00:02:59,820
y estas funciones tomaremos también una cadena,

54
00:02:59,820 --> 00:03:01,310
pero como segundo argumento,

55
00:03:01,310 --> 00:03:03,643
asumirá una función.

56
00:03:04,520 --> 00:03:08,053
Bien, y por lo tanto esta es una función de orden superior.

57
00:03:09,210 --> 00:03:10,500
Así que esa es la definición que nosotros

58
00:03:10,500 --> 00:03:12,273
aprendido en el último video.

59
00:03:14,620 --> 00:03:15,823
Entonces toma una función

60
00:03:15,823 --> 00:03:19,860
y el aire porque es una función de orden superior.

61
00:03:19,860 --> 00:03:21,280
Y ahora vamos a ver cómo

62
00:03:21,280 --> 00:03:23,130
en realidad llamaríamos a esta función.

63
00:03:24,560 --> 00:03:28,090
Así es como me gusta hacerlo muchas veces.

64
00:03:28,090 --> 00:03:32,863
Así que digamos que JavaScript es el mejor.

65
00:03:35,080 --> 00:03:36,500
Y como segundo argumento,

66
00:03:36,500 --> 00:03:41,500
Ahora pasaré a la función de la primera palabra superior.

67
00:03:41,840 --> 00:03:44,260
Y básicamente lo que quiero es la función de transformador.

68
00:03:44,260 --> 00:03:47,160
ahora para hacer con esta cadena,

69
00:03:47,160 --> 00:03:50,583
es transformar la cadena usando estas funciones aquí.

70
00:03:51,720 --> 00:03:54,483
Así que esta función que creamos aquí al principio.

71
00:03:55,660 --> 00:03:56,550
Está bien,

72
00:03:56,550 --> 00:03:58,130
y una vez más aviso

73
00:03:58,130 --> 00:04:02,230
cómo solo estamos pasando el valor de la función en sí.

74
00:04:02,230 --> 00:04:03,730
Así que realmente solo el valor,

75
00:04:03,730 --> 00:04:07,000
no estamos llamando a esta función aquí.

76
00:04:07,000 --> 00:04:09,850
De acuerdo, solo lo estamos pasando y será para

77
00:04:09,850 --> 00:04:13,240
función de transformador llamando a esta función.

78
00:04:13,240 --> 00:04:14,683
Así que vamos a hacer eso.

79
00:04:16,630 --> 00:04:20,250
Así que simplemente miraremos a la consola transformada

80
00:04:22,330 --> 00:04:26,800
cadena significó y aquí va nuestra expresión.

81
00:04:26,800 --> 00:04:30,450
Y aquí es donde ahora llamaremos a la función.

82
00:04:30,450 --> 00:04:33,300
Ahora, dentro de la función del transformador,

83
00:04:33,300 --> 00:04:37,680
esta sala superior ahora se llama FN, ¿verdad?

84
00:04:37,680 --> 00:04:39,713
Así que ese es el segundo parámetro aquí.

85
00:04:40,600 --> 00:04:45,410
Y así FN y luego con el pasado en cadena.

86
00:04:45,410 --> 00:04:46,390
Bueno,

87
00:04:46,390 --> 00:04:47,830
y cuando vemos el resultado,

88
00:04:47,830 --> 00:04:50,142
esto tendrá aún más sentido.

89
00:04:50,142 --> 00:04:53,170
Bien, eso también es un bloqueo para la consola,

90
00:04:53,170 --> 00:04:54,413
la cadena original.

91
00:04:58,240 --> 00:05:01,910
Y eso es solo STR, está bien.

92
00:05:01,910 --> 00:05:04,210
Y también quieren mostrarte algo más.

93
00:05:06,540 --> 00:05:10,723
Así que miremos transformados por,

94
00:05:13,560 --> 00:05:15,530
y en el ultimo video te lo dije

95
00:05:15,530 --> 00:05:18,800
que las funciones incluso tienen métodos recuerda,

96
00:05:18,800 --> 00:05:20,310
y además de los métodos,

97
00:05:20,310 --> 00:05:22,840
Las funciones pueden incluso tener propiedades.

98
00:05:22,840 --> 00:05:25,660
Y uno de ellos es la propiedad del nombre.

99
00:05:25,660 --> 00:05:27,750
Así que de nuevo tomamos FN,

100
00:05:27,750 --> 00:05:29,580
cual es la funcion que

101
00:05:29,580 --> 00:05:33,760
este transformador de orden superior se obtiene como entrada.

102
00:05:33,760 --> 00:05:37,200
Y luego podemos leer la propiedad del nombre.

103
00:05:37,200 --> 00:05:40,763
Y ahora veamos el resultado de esta operación.

104
00:05:41,840 --> 00:05:44,653
Así que echemos un vistazo a nuestro interesante resultado.

105
00:05:45,520 --> 00:05:48,060
Entonces, por supuesto, la cadena original parece familiar,

106
00:05:48,060 --> 00:05:51,390
pero entonces la cadena transformada de hecho,

107
00:05:51,390 --> 00:05:55,010
se transformó tal como esperábamos.

108
00:05:55,010 --> 00:05:57,690
Así que la primera palabra es mayúscula.

109
00:05:57,690 --> 00:06:01,433
Y ese es, por supuesto, el trabajo de esta función aquí.

110
00:06:02,534 --> 00:06:04,750
Finalmente, también podemos ver que

111
00:06:04,750 --> 00:06:08,320
fue transformado por la primera palabra superior.

112
00:06:08,320 --> 00:06:10,830
Y eso es FN.Name.

113
00:06:10,830 --> 00:06:12,480
Entonces, como dice la propiedad,

114
00:06:12,480 --> 00:06:15,500
en realidad es solo el nombre de la función.

115
00:06:15,500 --> 00:06:16,920
Y entonces este de aquí en realidad podemos

116
00:06:16,920 --> 00:06:21,120
usar en cualquier funcionamiento que tengamos en JavaScript.

117
00:06:21,120 --> 00:06:22,633
Y ahora intentemos lo mismo,

118
00:06:23,540 --> 00:06:25,943
aquí con nuestra otra función.

119
00:06:27,460 --> 00:06:31,283
Así que una palabra, y veamos el resultado.

120
00:06:32,820 --> 00:06:34,570
Démosle un poco más de espacio aquí.

121
00:06:36,320 --> 00:06:38,460
Y aquí está la segunda salida.

122
00:06:38,460 --> 00:06:41,840
Entonces, para transformar la cadena, ahora es esta aquí,

123
00:06:41,840 --> 00:06:44,270
todo en una palabra y de hecho fue

124
00:06:44,270 --> 00:06:47,640
transformada por la función de una palabra.

125
00:06:47,640 --> 00:06:49,460
Así que este de aquí,

126
00:06:49,460 --> 00:06:50,610
¿está bien?

127
00:06:50,610 --> 00:06:55,610
Así que recapitulemos, estamos llamando a la función de transformador aquí

128
00:06:55,690 --> 00:06:59,650
y en esa función estamos pasando la función de devolución de llamada

129
00:07:00,530 --> 00:07:04,000
y recuerda que llamamos a estas funciones que pasamos.

130
00:07:04,000 --> 00:07:05,670
Así que este y este,

131
00:07:05,670 --> 00:07:07,350
las funciones de devolución de llamada.

132
00:07:07,350 --> 00:07:10,780
Y eso es porque no los llamamos nosotros mismos.

133
00:07:10,780 --> 00:07:14,860
Pero en su lugar, llamamos a JavaScript para básicamente decirles más tarde.

134
00:07:14,860 --> 00:07:15,720
Y en este caso,

135
00:07:15,720 --> 00:07:18,423
llamarlos más tarde sucede aquí mismo.

136
00:07:19,260 --> 00:07:21,140
Entonces es la transformada de la función.

137
00:07:21,140 --> 00:07:24,080
que llamará a estas funciones de devolución de llamada.

138
00:07:24,080 --> 00:07:25,520
Y las funciones de devolución de llamada,

139
00:07:25,520 --> 00:07:28,203
aquí, por supuesto, se llaman FN.

140
00:07:29,170 --> 00:07:31,680
Y entonces, ese es el nombre de la función aquí.

141
00:07:31,680 --> 00:07:33,293
que luego tenemos que llamar.

142
00:07:34,260 --> 00:07:35,790
Está bien,

143
00:07:35,790 --> 00:07:38,520
y de hecho esta es exactamente la misma idea

144
00:07:38,520 --> 00:07:40,430
que ya hablamos,

145
00:07:40,430 --> 00:07:42,990
usando la función de agregar oyente de ventilación.

146
00:07:42,990 --> 00:07:43,963
¿Bien?

147
00:07:43,963 --> 00:07:45,920
Entonces, digamos que tenemos esto

148
00:07:47,790 --> 00:07:50,670
función muy simple choca esos cinco,

149
00:07:50,670 --> 00:07:53,450
que realmente no hace mucho excepto desactivar

150
00:07:53,450 --> 00:07:55,173
registrando algo en la consola.

151
00:07:56,520 --> 00:07:59,160
Pongamos un emoji aquí,

152
00:07:59,160 --> 00:08:02,763
esta saludando y ahora digamos,

153
00:08:03,800 --> 00:08:08,800
document.Buddy.End event listener click

154
00:08:12,630 --> 00:08:14,323
y luego esta función.

155
00:08:15,230 --> 00:08:17,400
Así que no importa esta parte aquí.

156
00:08:17,400 --> 00:08:19,910
Vamos a aprender más tarde lo que esto significa,

157
00:08:19,910 --> 00:08:22,540
pero lo que importa es el detector de eventos de adición?

158
00:08:22,540 --> 00:08:23,810
Y así como,

159
00:08:23,810 --> 00:08:28,810
o una función de transformador que pasamos en una función de devolución de llamada.

160
00:08:28,810 --> 00:08:31,203
De acuerdo, ¿y la función de devolución de llamada en esto?

161
00:08:32,180 --> 00:08:35,830
también se denomina controlador de eventos o detector de eventos,

162
00:08:35,830 --> 00:08:37,230
pero eso realmente no importa.

163
00:08:37,230 --> 00:08:39,540
Lo que importa es que conceptualmente,

164
00:08:39,540 --> 00:08:42,040
este año es la función de devolución de llamada,

165
00:08:42,040 --> 00:08:44,460
y esta es la función de orden superior.

166
00:08:44,460 --> 00:08:47,800
Así que esta es como nuestra función de transformador.

167
00:08:47,800 --> 00:08:51,823
Y esta es como la palabra única o la primera palabra superior.

168
00:08:53,200 --> 00:08:54,033
Bueno.

169
00:08:54,033 --> 00:08:56,610
Entonces es solo una devolución de llamada que JavaScript,

170
00:08:56,610 --> 00:08:59,833
llamará tan pronto como hagamos clic en el cuerpo.

171
00:09:01,060 --> 00:09:04,490
Así que verás ahí abajo ahora que aparecen.

172
00:09:04,490 --> 00:09:08,370
Y así, sólo entonces se vuelve a llamar realmente.

173
00:09:08,370 --> 00:09:10,650
Y hay muchos otros ejemplos

174
00:09:10,650 --> 00:09:12,720
en el lenguaje JavaScript.

175
00:09:12,720 --> 00:09:15,620
Y este concepto de funciones de devolución de llamada se utiliza

176
00:09:15,620 --> 00:09:18,940
todo el tiempo en funciones JavaScript integradas.

177
00:09:18,940 --> 00:09:21,180
Así que hay muchos más ejemplos,

178
00:09:21,180 --> 00:09:22,076
por ejemplo el para cada

179
00:09:22,076 --> 00:09:25,410
función y que llamamos a una carrera.

180
00:09:25,410 --> 00:09:26,960
Así que vamos a crear una matriz aquí.

181
00:09:26,960 --> 00:09:31,960
Jonas, Marta y Adán.

182
00:09:32,200 --> 00:09:34,720
Y en esa matriz, podemos llamar

183
00:09:34,720 --> 00:09:37,150
algo llamado D para cada método.

184
00:09:37,150 --> 00:09:38,140
Y aprenderemos sobre esto.

185
00:09:38,140 --> 00:09:40,560
uno en la siguiente sección en realidad.

186
00:09:40,560 --> 00:09:41,393
Y luego otra vez,

187
00:09:41,393 --> 00:09:45,020
pasamos una función de devolución de llamada a for each.

188
00:09:45,020 --> 00:09:46,743
Así que volvamos a chocar los cinco.

189
00:09:47,950 --> 00:09:50,640
Y mientras vuelvo a cargar esto ahora,

190
00:09:50,640 --> 00:09:55,080
entonces llegamos aquí estas tres olas bien.

191
00:09:55,080 --> 00:09:58,990
Y eso es porque tenemos tres elementos en esta matriz.

192
00:09:58,990 --> 00:10:02,120
Y como dice el nombre del método,

193
00:10:02,120 --> 00:10:05,110
para cada uno de ellos se llamará a esta devolución de llamada.

194
00:10:05,110 --> 00:10:07,973
Y por lo tanto tenemos tres esferas ondulantes,

195
00:10:09,020 --> 00:10:10,510
pero vamos a aprender todo sobre el

196
00:10:10,510 --> 00:10:13,150
para cada método en la siguiente sección.

197
00:10:13,150 --> 00:10:16,240
Lo que importa aquí es que una vez más,

198
00:10:16,240 --> 00:10:19,450
aquí usamos el concepto de la función de devolución de llamada.

199
00:10:19,450 --> 00:10:23,303
Y esto es algo muy común en JavaScript.

200
00:10:25,320 --> 00:10:27,300
Déjame escribir eso aquí,

201
00:10:27,300 --> 00:10:29,163
devoluciones de llamada todo el tiempo.

202
00:10:31,530 --> 00:10:34,410
Así que ahora tomemos uno o dos minutos

203
00:10:34,410 --> 00:10:36,650
para entender por qué es eso.

204
00:10:36,650 --> 00:10:40,330
¿Por qué nuestras funciones de devolución de llamada se usan tanto en JavaScript?

205
00:10:40,330 --> 00:10:43,060
y ¿por qué son tan útiles?

206
00:10:43,060 --> 00:10:45,420
Bueno, la primera gran ventaja de este

207
00:10:45,420 --> 00:10:48,320
es que facilita dividir o codificar

208
00:10:48,320 --> 00:10:51,820
en partes más reutilizables e interconectadas.

209
00:10:51,820 --> 00:10:54,860
Así que eso es exactamente lo que tenemos aquí, correcto.

210
00:10:54,860 --> 00:10:56,580
Tenemos toda esta funcionalidad aquí,

211
00:10:56,580 --> 00:10:59,940
muy bien divididos en sus propias funciones,

212
00:10:59,940 --> 00:11:02,750
y eso en sí mismo es realmente útil.

213
00:11:02,750 --> 00:11:06,070
Pero hay una segunda ventaja mucho más importante,

214
00:11:06,070 --> 00:11:08,480
cuál es el hecho de que las funciones de devolución de llamada

215
00:11:08,480 --> 00:11:11,010
nos permite crear abstracción.

216
00:11:11,010 --> 00:11:13,320
Así que déjame explicarte lo que eso significa.

217
00:11:13,320 --> 00:11:17,140
Así que lo que hicimos aquí en nuestro ejemplo de código fue crear un

218
00:11:17,140 --> 00:11:20,430
nivel de abstracción y abstracción

219
00:11:20,430 --> 00:11:24,000
es algo realmente importante en la programación.

220
00:11:24,000 --> 00:11:26,640
Entonces, básicamente, lo que es abstracto y significa,

221
00:11:26,640 --> 00:11:29,060
es que ocultamos el detalle de algún código

222
00:11:29,060 --> 00:11:31,950
implementación porque realmente no nos importa

223
00:11:31,950 --> 00:11:34,150
sobre todo ese detalle.

224
00:11:34,150 --> 00:11:35,710
Y esto nos permite pensar

225
00:11:35,710 --> 00:11:39,720
sobre problemas a un nivel superior más abstracto.

226
00:11:39,720 --> 00:11:42,480
Y por eso se llama obstrucción.

227
00:11:42,480 --> 00:11:45,060
Así que volviendo a nuestro ejemplo aquí,

228
00:11:45,060 --> 00:11:48,350
esta transformada a una función no le importa en absoluto,

229
00:11:48,350 --> 00:11:50,660
cómo se transforma la cadena.

230
00:11:50,660 --> 00:11:53,580
No le importa este nivel de detalle.

231
00:11:53,580 --> 00:11:57,410
Bien, todo lo que quiere hacer es transformar una cadena,

232
00:11:57,410 --> 00:12:00,280
pero no le importa cómo debe hacerlo.

233
00:12:00,280 --> 00:12:03,380
Entonces, lo que quiero decir es que podríamos haber tomado,

234
00:12:03,380 --> 00:12:08,140
este abrigo aquí y lo escribí directamente en el transformador,

235
00:12:08,140 --> 00:12:10,190
o incluso este abrigo aquí,

236
00:12:10,190 --> 00:12:11,023
bien.

237
00:12:11,023 --> 00:12:13,270
Eso habría funcionado igual,

238
00:12:13,270 --> 00:12:15,520
pero en cambio abstrajimos esto

239
00:12:15,520 --> 00:12:18,750
recubrir en otras funciones.

240
00:12:18,750 --> 00:12:22,350
De nuevo, creamos un nuevo nivel de obstrucción

241
00:12:22,350 --> 00:12:25,130
y al hacer esto o la función de transformador principal,

242
00:12:25,130 --> 00:12:27,370
aquí realmente solo se preocupa

243
00:12:27,370 --> 00:12:30,370
con la transformación de la propia cadena de entrada.

244
00:12:30,370 --> 00:12:34,970
Pero no importa cómo funcione esa transformación en sí misma.

245
00:12:34,970 --> 00:12:38,400
Básicamente es delegar la transformación de cadenas

246
00:12:38,400 --> 00:12:41,120
al otro nivel inferior de funciones,

247
00:12:41,120 --> 00:12:43,120
cuales son estos dos.

248
00:12:43,120 --> 00:12:46,260
Bien, y espero que esto tenga sentido para ti,

249
00:12:46,260 --> 00:12:49,600
pero también volveremos a esta idea de abstracción

250
00:12:49,600 --> 00:12:53,310
más adelante cuando hablemos de programación orientada a objetos.

251
00:12:53,310 --> 00:12:55,270
Pero es bueno que pienses

252
00:12:55,270 --> 00:12:58,210
y hablar de estas cosas lo antes posible,

253
00:12:58,210 --> 00:13:01,370
para que puedas empezar a tener una idea de esto realmente,

254
00:13:01,370 --> 00:13:04,310
importante concepto de abstracción.

255
00:13:04,310 --> 00:13:06,950
Y ahora con esta idea de obstrucción

256
00:13:06,950 --> 00:13:10,413
y niveles más altos y niveles más bajos de obstrucción,

257
00:13:12,700 --> 00:13:15,950
aquí se llama una función de orden superior.

258
00:13:15,950 --> 00:13:19,500
Correcto, y de nuevo eso es básicamente porque esta función

259
00:13:19,500 --> 00:13:23,610
aquí opera a un nivel más alto de obstrucción,

260
00:13:23,610 --> 00:13:28,310
dejando los detalles de bajo nivel a estas funciones de bajo nivel.

261
00:13:28,310 --> 00:13:29,670
Bueno.

262
00:13:29,670 --> 00:13:31,390
Ahora no se llaman realmente

263
00:13:31,390 --> 00:13:34,530
hola orden o funciones de bajo nivel,

264
00:13:34,530 --> 00:13:36,240
pero así es como me gusta llamar

265
00:13:36,240 --> 00:13:38,830
ellos en esta circunstancia.

266
00:13:38,830 --> 00:13:39,840
Está bien,

267
00:13:39,840 --> 00:13:41,210
asi que entendiendo esto

268
00:13:41,210 --> 00:13:44,360
es absolutamente crucial para su proceso.

269
00:13:44,360 --> 00:13:46,547
Y de hecho considero que este es uno de los más

270
00:13:46,547 --> 00:13:49,500
conferencias importantes aquí del curso

271
00:13:49,500 --> 00:13:51,820
porque las funciones de devolución de llamada son realmente,

272
00:13:51,820 --> 00:13:55,730
una parte vital del lenguaje JavaScript.

273
00:13:55,730 --> 00:13:59,570
Y esa es una de las principales conclusiones de este video.

274
00:13:59,570 --> 00:14:02,740
Nos permiten crear este tipo de lógica aquí.

275
00:14:02,740 --> 00:14:06,100
Entonces, creo que probablemente sea una buena idea,

276
00:14:06,100 --> 00:14:08,370
ese que de verdad nos reseñó muy bien

277
00:14:08,370 --> 00:14:10,950
y tal vez incluso escriba su propio ejemplo,

278
00:14:10,950 --> 00:14:13,020
de algo que ves en el mundo real

279
00:14:13,020 --> 00:14:15,440
utilizando el mismo concepto,

280
00:14:15,440 --> 00:14:16,273
bueno.

281
00:14:16,273 --> 00:14:18,723
Creo que es una muy buena idea que deberías probar.

282
00:14:19,630 --> 00:14:21,730
Luego aquí en las funciones integradas como

283
00:14:21,730 --> 00:14:24,140
agregue un detector de eventos y para cada uno,

284
00:14:24,140 --> 00:14:26,850
estas funciones de devolución de llamada son muy importantes

285
00:14:26,850 --> 00:14:29,300
y tan útiles porque los usamos,

286
00:14:29,300 --> 00:14:33,190
para decirle a estas funciones qué es exactamente lo que deben hacer.

287
00:14:33,190 --> 00:14:35,600
Por ejemplo, la función de añadir detector de eventos

288
00:14:35,600 --> 00:14:37,860
por sí solo no tendría idea

289
00:14:37,860 --> 00:14:41,400
de qué hacer cada vez que ocurra el evento de clic aquí.

290
00:14:41,400 --> 00:14:42,570
¿Bien?

291
00:14:42,570 --> 00:14:45,890
Y es por eso que pasamos la función de devolución de llamada aquí,

292
00:14:45,890 --> 00:14:49,903
para decirle a la función de escucha de eventos add exactamente qué hacer.

293
00:14:50,790 --> 00:14:52,300
Y como ya sabes,

294
00:14:52,300 --> 00:14:54,660
esta es la función de orden superior aquí

295
00:14:54,660 --> 00:14:57,037
con el alto nivel de obstrucción.

296
00:14:57,037 --> 00:14:58,410
Y esta aquí es la función con,

297
00:14:58,410 --> 00:15:01,233
cuanto más bajo sea el nivel de obstrucción.

298
00:15:02,070 --> 00:15:03,160
Está bien.

299
00:15:03,160 --> 00:15:04,490
Pero basta de hablar,

300
00:15:04,490 --> 00:15:07,190
tómese un minuto para revisar realmente esta conferencia

301
00:15:07,190 --> 00:15:09,670
y construir un ejemplo propio tal vez.

302
00:15:09,670 --> 00:15:11,400
Y luego te veo en el siguiente video,

303
00:15:11,400 --> 00:15:14,960
donde básicamente haremos lo contrario de este.

304
00:15:14,960 --> 00:15:17,763
Entonces, tener funciones devuelve otras funciones.