1
00:00:00,210 --> 00:00:00,810
Todo bien.

2
00:00:00,810 --> 00:00:03,900
Repasemos las soluciones a estos tres problemas.

3
00:00:03,930 --> 00:00:10,100
Comencemos con el primero, aún así, para comenzar aquí, voy a seguir adelante y abrir el suministro.

4
00:00:10,740 --> 00:00:18,530
Tengo un índice que lo archivó y voy a agregar una etiqueta de script y llamaremos a esta

5
00:00:18,750 --> 00:00:19,110
solución.

6
00:00:19,230 --> 00:00:21,410
Sí.

7
00:00:21,420 --> 00:00:28,410
Así que, a continuación, necesito hacer esta solución con ese archivo J y voy a guardar esa solución.

8
00:00:28,640 --> 00:00:32,130
Sí, en el mismo lugar y bastante seguro.

9
00:00:32,700 --> 00:00:35,340
Así que de nuevo estamos empezando es par.

10
00:00:35,610 --> 00:00:38,430
Así que voy a declarar que la función es pareja

11
00:00:41,340 --> 00:00:43,100
y que necesita tomar un solo argumento.

12
00:00:43,200 --> 00:00:47,640
Vamos a llamarlo insensible y luego queremos

13
00:00:50,580 --> 00:00:56,990
volver verdadero si incluso devuelve falso de lo contrario.

14
00:00:57,030 --> 00:00:59,040
Entonces hay algunas maneras de hacer esto.

15
00:00:59,100 --> 00:01:01,880
El primero es hacerlo tan explícitamente como sea posible.

16
00:01:02,070 --> 00:01:10,830
que así es como decimos si algo es incluso si el resto de dividir dos en ese número es cero si no hay residuo.

17
00:01:10,830 --> 00:01:15,430
Entonces vamos a decir que si el mod 2 entumecido es cero, recuerde

18
00:01:15,480 --> 00:01:16,680
Eso significa que es parejo.

19
00:01:16,770 --> 00:01:25,600
Entonces, si ese es el caso, podemos devolver VERDADERO o bien, devolver falso.

20
00:01:25,830 --> 00:01:27,230
Así.

21
00:01:27,870 --> 00:01:29,520
Y voy a mover

22
00:01:32,820 --> 00:01:37,240
esto aquí solo para aclarar qué corresponde a qué.

23
00:01:37,470 --> 00:01:39,610
Así.

24
00:01:40,080 --> 00:01:41,260
Entonces podemos hacer esto.

25
00:01:41,580 --> 00:01:44,480
Y en realidad no voy a llamar a mi función todavía.

26
00:01:44,490 --> 00:01:49,430
Voy a abrirlo en el navegador para mostrarte algo nuevo.

27
00:01:49,860 --> 00:01:57,500
Entonces, si abro la consola a la que tengo acceso, incluso está en mi consola aquí.

28
00:01:57,870 --> 00:02:04,170
Así que escribo está incluso sin paréntesis y me dice que sí, sé que está aquí. Aquí está

29
00:02:04,170 --> 00:02:09,880
el código y si agrego los paréntesis, necesito pasar ese número como 5 y obtengo falso.

30
00:02:10,440 --> 00:02:19,120
Y puedo hacerlo de nuevo con cuatro o con uno o con noventa y nueve y funciona muy bien.

31
00:02:19,530 --> 00:02:21,860
Entonces hay dos cosas que hay, incluso funciona.

32
00:02:21,900 --> 00:02:22,910
Entonces eso es asombroso.

33
00:02:22,950 --> 00:02:28,590
Pero lo más importante es que quiero mostrarle que podemos definir funciones y códigos en nuestros archivos.

34
00:02:28,800 --> 00:02:31,420
Y luego cuando abrimos esos archivos en el navegador.

35
00:02:31,620 --> 00:02:35,510
En este caso, lo añejamos L5 que está conectado a nuestro archivo javascript.

36
00:02:35,580 --> 00:02:40,140
Entonces puedo acceder a esas funciones.

37
00:02:40,140 --> 00:02:42,500
Entonces, hay un pequeño refactor que podemos hacer aquí.

38
00:02:42,750 --> 00:02:49,650
Voy a copiar este código, lo comentaré todo y voy a

39
00:02:49,650 --> 00:02:57,470
acortarlo, así que primero te mostraré la solución y luego repasaremos cómo funciona.

40
00:02:57,480 --> 00:03:00,670
Entonces este es un retorno sustancialmente más corto.

41
00:03:00,800 --> 00:03:04,260
El número dos es igual a igual a cero.

42
00:03:04,260 --> 00:03:05,610
Así que refresquemos la página.

43
00:03:05,640 --> 00:03:12,980
Asegúrese de que funciona incluso si 4 es verdadero, incluso si 3 es falso.

44
00:03:12,990 --> 00:03:15,060
Aún funciona de la misma manera.

45
00:03:16,260 --> 00:03:19,660
Entonces la forma en que realmente funciona esta línea aquí.

46
00:03:19,710 --> 00:03:22,920
Devolver Nahm hecho para triplicar es igual a cero.

47
00:03:23,130 --> 00:03:28,750
Primero va a evaluar esto y es una declaración verdadera o falsa, es una declaración booleana.

48
00:03:29,040 --> 00:03:33,180
Tan insensible a Trípoli es cero o va a ser verdadero o falso.

49
00:03:33,270 --> 00:03:35,840
Y luego estamos volviendo verdadero o falso.

50
00:03:36,120 --> 00:03:43,800
Entonces, en lugar de verificar si es cierto, devuelve true y si es falso, devolvemos el valor falso, solo giramos

51
00:03:43,800 --> 00:03:44,970
el valor inmediatamente.

52
00:03:44,970 --> 00:03:48,170
Entonces ese es un buen atajo allí.

53
00:03:49,860 --> 00:03:52,100
Entonces el próximo tenemos factorial.

54
00:03:52,320 --> 00:04:00,510
Así que voy a seguir adelante y comenzar definiendo mi función llamada función factorial factorial y sabemos

55
00:04:00,510 --> 00:04:03,070
que necesitamos tomar un número.

56
00:04:04,110 --> 00:04:05,780
Así que aquí voy a escribir una nota.

57
00:04:05,880 --> 00:04:14,430
Entonces si hiciera un factorial de cuatro que debería darme cuatro veces tres veces dos veces uno

58
00:04:14,430 --> 00:04:17,340
y voy a venir con eso.

59
00:04:17,340 --> 00:04:20,820
Entonces, dentro de nuestra función, voy a escribir algunas líneas de pseudo código.

60
00:04:20,850 --> 00:04:26,730
Lo primero que sabemos que queremos hacer es definir una variable de resultado y luego lo último

61
00:04:26,730 --> 00:04:30,050
en la función es devolver la variable de resultado.

62
00:04:30,480 --> 00:04:34,230
Entonces, eso es importante y allí es donde vamos

63
00:04:36,960 --> 00:04:42,770
a calcular el factorial y el valor de la tienda en el resultado.

64
00:04:44,060 --> 00:04:47,740
Entonces tenemos algunos enfoques sobre cómo podemos calcular factoriales.

65
00:04:47,880 --> 00:04:54,290
Podríamos comenzar estableciendo el resultado para ser uno al principio y luego multiplicarlo por dos y luego multiplicarlo por

66
00:04:54,620 --> 00:04:59,910
tres y luego por 4 o podríamos ir al revés como lo hemos hecho aquí.

67
00:05:00,390 --> 00:05:08,140
Y voy a comenzar haciéndolo de esta manera, así que necesitas una variable de resultado var result igual a 1.

68
00:05:08,730 --> 00:05:15,710
Y luego, lo que tenemos que hacer es multiplicar ese resultado por cada número entre 1 y ese número.

69
00:05:15,750 --> 00:05:20,110
Entonces, uno de cada cuatro o uno de cada diez pasa lo que pase.

70
00:05:20,670 --> 00:05:25,840
Entonces, para hacer eso, querremos utilizar un ciclo que podríamos usar ya sea para un ciclo for o un ciclo while.

71
00:05:26,040 --> 00:05:28,800
Voy a usar un bucle for aquí porque es un poco más corto.

72
00:05:28,920 --> 00:05:32,750
Entonces, por ahora, vamos a llamarlo I.

73
00:05:33,300 --> 00:05:35,060
Y podríamos comenzar yo como uno.

74
00:05:35,160 --> 00:05:37,030
Así que lo haré primero.

75
00:05:37,410 --> 00:05:45,330
Y vamos a seguir multiplicando mientras estoy menos o igual que entumecido, entonces vamos a agregar 1

76
00:05:45,480 --> 00:05:47,380
a 1 cada vez.

77
00:05:47,880 --> 00:05:54,950
Y entonces todo lo que queremos hacer es multiplicar el resultado por I.

78
00:05:55,250 --> 00:06:04,080
Entonces, si pasamos por esto si lo hicimos para cuatro resultados factoriales de cuatro resultados como uno aquí,

79
00:06:04,120 --> 00:06:09,250
entonces estamos creando I start dice 1 y multiplicamos resultado por.

80
00:06:09,450 --> 00:06:13,350
Entonces eso es solo 1 por 1 que noté que es innecesario.

81
00:06:13,350 --> 00:06:16,410
Entonces, quizás deseemos comenzar con esto a las 2.

82
00:06:16,440 --> 00:06:20,350
Entonces la primera vez a través de multiplicamos por el resultado de los tiempos.

83
00:06:20,400 --> 00:06:22,560
Entonces obtenemos 1 por 2

84
00:06:22,680 --> 00:06:27,710
La próxima vez que pasé por I ahora son tres porque añadimos uno.

85
00:06:27,990 --> 00:06:30,920
Entonces eso es menos que el número que es cuatro.

86
00:06:30,930 --> 00:06:38,040
Entonces multiplicamos de nuevo el resultado es igual al valor actual, un resultado que es este multiplicado por 3.

87
00:06:39,090 --> 00:06:43,990
Entonces, tenemos 6 y luego la próxima vez, ahora soy cuatro.

88
00:06:44,000 --> 00:06:46,250
Entonces cuatro es menor o igual a cuatro.

89
00:06:46,250 --> 00:06:47,230
Eso es verdad.

90
00:06:47,580 --> 00:06:53,790
Así que vamos a multiplicar una última vez por cuatro y luego agregar una a I en nuestro ciclo de cuatro y

91
00:06:53,790 --> 00:06:54,500
ahora hemos terminado.

92
00:06:55,250 --> 00:06:57,260
Porque ahora estamos en 5 5.

93
00:06:57,250 --> 00:06:59,380
No es menor o igual a cuatro.

94
00:07:00,120 --> 00:07:02,000
Entonces eso es todo lo que deberíamos hacer allí.

95
00:07:02,000 --> 00:07:04,000
Hay un pequeño cambio que podríamos hacer.

96
00:07:04,050 --> 00:07:06,940
No necesitamos decir que el resultado es igual a los tiempos de resultado.

97
00:07:06,950 --> 00:07:14,340
Puedo acortar esto usando star equals, que es solo un atajo para exactamente lo mismo que acabamos

98
00:07:14,340 --> 00:07:15,240
de tener.

99
00:07:15,690 --> 00:07:19,770
Y luego, lo último que tenemos que hacer es devolver los resultados.

100
00:07:20,280 --> 00:07:27,130
Así que ahorremos, abrámoslo en la actualización del navegador y deberíamos tener acceso a nuestra función factorial.

101
00:07:27,960 --> 00:07:31,480
Probemos factorial de tres y obtenemos seis.

102
00:07:31,530 --> 00:07:41,340
¿Qué tal factorial de cuatro o 10 que es 360 2000 o tres millones seiscientos veintiocho mil ochocientos que es

103
00:07:41,390 --> 00:07:46,940
lo que tenemos aquí como la solución a factorial de 10.

104
00:07:47,370 --> 00:07:48,860
Y luego probemos.

105
00:07:49,110 --> 00:07:52,060
Factorial de cero.

106
00:07:53,250 --> 00:07:54,630
Y tenemos uno.

107
00:07:54,660 --> 00:07:56,230
Entonces funciona perfectamente.

108
00:07:56,670 --> 00:07:58,510
Entonces eso es todo lo que tenemos que hacer factorial.

109
00:07:58,710 --> 00:08:05,090
Como mencioné, podrías hacer esto en la otra dirección donde comenzamos con un resultado igual al número.

110
00:08:05,160 --> 00:08:06,420
Y trabajamos hacia atrás.

111
00:08:06,540 --> 00:08:08,450
Y esa sería una modificación muy simple.

112
00:08:08,670 --> 00:08:17,930
Básicamente cambiaríamos esto para que se entumeciera y luego comenzaríamos aquí en uno inferior entumecido mientras yo.

113
00:08:17,930 --> 00:08:24,220
Es mayor o igual que 1 i.

114
00:08:24,260 --> 00:08:25,780
Menos menos.

115
00:08:26,190 --> 00:08:31,980
Así que estamos comenzando el resultado es cuatro y luego vamos a multiplicar por 1 menos que el resultado

116
00:08:31,980 --> 00:08:34,140
que es tres y luego restamos 1.

117
00:08:34,160 --> 00:08:38,110
Así que multiplique por 2 y luego multiplique por 1 y luego terminamos.

118
00:08:38,550 --> 00:08:40,430
Entonces ese definitivamente definitivamente funciona.

119
00:08:40,440 --> 00:08:43,870
El único problema que podríamos encontrar si actualizamos.

120
00:08:43,950 --> 00:08:45,800
Probemos este factorial de tres.

121
00:08:45,840 --> 00:08:51,640
Nos da 6 5 nos da 120 y 0 nos da cero.

122
00:08:51,870 --> 00:08:56,030
Entonces hay un problema allí porque cuando comenzamos de esta manera.

123
00:08:56,040 --> 00:08:57,760
El resultado es igual a entumecido.

124
00:08:57,920 --> 00:09:01,740
Si pasamos en cero estamos comenzando el resultado como cero.

125
00:09:02,120 --> 00:09:03,250
Y luego terminamos.

126
00:09:03,300 --> 00:09:05,190
No estamos multiplicando 0 por nada.

127
00:09:05,180 --> 00:09:07,630
E incluso si lo hiciéramos, seguiría siendo cero.

128
00:09:07,910 --> 00:09:12,900
ser algo así como si los puntajes entumecidos equivale a cero retorno 1.

129
00:09:12,960 --> 00:09:18,790
Entonces, la solución a eso es que podríamos tener una declaración simple aquí que podría

130
00:09:18,990 --> 00:09:22,760
Y recuerda si tenemos una declaración de retorno que cortocircuita todo.

131
00:09:23,000 --> 00:09:24,840
Entonces ahora debería ser bueno ir.

132
00:09:25,470 --> 00:09:30,540
Sin embargo, prefiero la primera solución porque es más corta y no tenemos que tener ese caso especial

133
00:09:30,780 --> 00:09:36,110
o lo que tenemos que hacer es establecer un resultado igual a 1 al principio y eso nos ocupa

134
00:09:36,120 --> 00:09:36,820
de todo.

135
00:09:38,860 --> 00:09:42,830
Muy bien, así que vamos a abordar el último que es Khabab para serpiente.

136
00:09:43,330 --> 00:09:49,080
Así que recuerda que se supone que esto toma una sola cadena y reemplaza todos los guiones con guiones bajos.

137
00:09:49,270 --> 00:09:52,720
Entonces lleva el caso de Khabab convertirlo en el caso de Snake.

138
00:09:52,720 --> 00:09:57,490
Así que primero definiré esa función y la dejaré vacía para comenzar.

139
00:09:57,550 --> 00:10:01,000
Entonces función, hagamos un poco de espacio aquí.

140
00:10:01,000 --> 00:10:05,720
La función Khabab to snake toma una sola cuerda.

141
00:10:05,740 --> 00:10:10,350
Lo llamaremos TR y luego pondremos nuestra lógica allí.

142
00:10:10,420 --> 00:10:13,530
Pero primero voy a rellenar un pseudo código nuevamente.

143
00:10:13,540 --> 00:10:22,630
Lo que queremos hacer es reemplazar todos los guiones con guiones

144
00:10:25,510 --> 00:10:30,000
bajos y luego regresar como TR.

145
00:10:30,760 --> 00:10:34,640
Entonces, el quid de la cuestión es que no sabemos cómo hacer eso.

146
00:10:34,660 --> 00:10:38,000
¿Cómo reemplazamos todos los caracteres de una cadena?

147
00:10:38,530 --> 00:10:40,000
Y otra vez eso fue deliberado.

148
00:10:40,030 --> 00:10:43,920
Quería que tengas que intentar buscar esto para tener que averiguarlo en línea.

149
00:10:43,930 --> 00:10:46,000
Es una habilidad realmente muy importante.

150
00:10:46,510 --> 00:10:51,290
Entonces, lo primero que haría es descubrir cómo quiero redactar mi búsqueda en Google.

151
00:10:51,370 --> 00:10:55,810
la que vivo es que quieres hacer tu búsqueda lo más general posible, así que No

152
00:10:55,810 --> 00:11:00,790
quiero incluir cosas sobre guiones y guiones bajos o sobre el estuche de serpiente y el estuche Khabab.

153
00:11:00,970 --> 00:11:07,430
Así que eso suena como algo que sería bastante obvio, pero realmente va a tener un gran impacto en los tipos de resultados que

154
00:11:07,450 --> 00:11:08,870
obtenemos en la regla en

155
00:11:08,950 --> 00:11:14,290
Por lo tanto, en su lugar, es posible que deseemos hacer una búsqueda para descubrir cómo reemplazamos cualquier carácter en una cadena, ya

156
00:11:14,740 --> 00:11:17,620
sea un guión o un guión bajo o un signo de dólar.

157
00:11:18,040 --> 00:11:19,660
Así que vamos a intentar eso.

158
00:11:19,690 --> 00:11:26,240
Voy a buscar cadenas de caracteres javascript replace.

159
00:11:26,940 --> 00:11:29,120
Y veamos qué obtenemos.

160
00:11:29,350 --> 00:11:31,010
Obtenga algunos resultados aquí.

161
00:11:31,090 --> 00:11:35,020
Me gustaría evitar las escuelas W3, así que vamos a probar estas dos.

162
00:11:35,140 --> 00:11:37,740
¿Cómo reemplazo un personaje en un índice en particular?

163
00:11:37,750 --> 00:11:40,560
Entonces eso no es exactamente lo que estamos buscando.

164
00:11:40,600 --> 00:11:42,010
Este se ve bien sin embargo.

165
00:11:42,010 --> 00:11:44,610
Reemplaza todas las comas en una cadena.

166
00:11:45,280 --> 00:11:51,310
Entonces, como no incluimos el guión o el guión bajo del camello o kabab, obtuvimos este

167
00:11:51,310 --> 00:11:52,840
resultado que funcionará perfectamente.

168
00:11:52,870 --> 00:11:54,820
Este es para reemplazar todas las comas.

169
00:11:54,880 --> 00:11:59,890
Solo necesitaremos cambiar un pequeño carácter en la solución en lugar de reemplazar las comas.

170
00:11:59,890 --> 00:12:02,230
Queremos reemplazar los guiones

171
00:12:02,230 --> 00:12:07,830
Entonces, la forma en que funciona el desbordamiento de la pila si nunca has visto un techo arriba es la pregunta de los que preguntan.

172
00:12:07,840 --> 00:12:10,230
Entonces aquí no es donde queremos leer nuestra solución.

173
00:12:10,450 --> 00:12:15,220
Esta es la pregunta y las respuestas son en respuesta.

174
00:12:15,220 --> 00:12:19,840
Entonces, bajo esta sección de respuestas y aquí vamos, aquí hay una respuesta.

175
00:12:19,840 --> 00:12:25,600
Esta persona dice que puedes usar una expresión regular con la bandera G y lo mejor es que no tienes

176
00:12:25,600 --> 00:12:27,250
que saber de qué se trata.

177
00:12:27,250 --> 00:12:29,540
Hablaremos más sobre expresiones regulares.

178
00:12:29,590 --> 00:12:32,250
Así que sigamos y copiemos esto.

179
00:12:33,340 --> 00:12:38,080
Entonces, lo primero que debe hacer es adaptar este código para que se ajuste a nuestra situación particular.

180
00:12:38,380 --> 00:12:44,260
Así que no necesitamos esta primera declaración de variables porque de hecho tenemos nuestra cadena entrando

181
00:12:44,260 --> 00:12:45,130
como TR.

182
00:12:45,460 --> 00:12:52,540
Pero lo que tendré que hacer es reemplazarlo como TR en primer lugar y luego querremos cambiar lo que

183
00:12:52,540 --> 00:12:55,590
estamos reemplazando y con qué lo estamos reemplazando.

184
00:12:55,600 --> 00:13:01,330
reemplazar los guiones y todo lo que diré sobre esta sintaxis aquí es que esto se llama expresión regular.

185
00:13:01,330 --> 00:13:02,100
Entonces queremos

186
00:13:02,230 --> 00:13:07,810
Y todo lo que ponemos dentro de las barras es el patrón que buscará reemplazar.

187
00:13:07,810 --> 00:13:13,280
Entonces, si pongo algo así como guiones dobles, buscará dos guiones seguidos.

188
00:13:13,480 --> 00:13:14,470
Eso es todo.

189
00:13:14,500 --> 00:13:20,530
Las expresiones regulares son mucho más complicadas donde puedo definir patrones muy largos y avanzados.

190
00:13:20,710 --> 00:13:23,230
Y luego puedo reemplazarlos por algo aquí.

191
00:13:23,230 --> 00:13:29,390
Entonces, necesitamos actualizar lo que estamos reemplazando con el guión, que es solo un guión bajo.

192
00:13:30,070 --> 00:13:38,500
guardar esto en una variable llamada new string new, ya que TR es el resultado de ejecutar la cadena no reemplazar.

193
00:13:38,500 --> 00:13:40,350
Así que voy a

194
00:13:40,450 --> 00:13:46,900
La razón por la que lo hice es que el punto reemplazado en realidad no reemplaza nada en el TR en la

195
00:13:46,900 --> 00:13:47,790
secuencia inicial misma.

196
00:13:47,920 --> 00:13:51,520
Simplemente devuelve una nueva copia con los datos reemplazados.

197
00:13:51,520 --> 00:13:57,850
Así que quiero capturar esa nueva copia que se devuelve en la nueva variable de cadena y luego simplemente

198
00:13:58,150 --> 00:13:59,520
devolver nueva como TR.

199
00:14:00,190 --> 00:14:02,230
Así que vamos a probar esto en el navegador.

200
00:14:02,230 --> 00:14:11,710
problemas en esa página y probar Khabab a la serpiente de los mundos de Hello Desch y obsequiaremos el mundo de subrayado.

201
00:14:11,740 --> 00:14:13,430
Voy a actualizar mis

202
00:14:13,630 --> 00:14:18,620
Probemos de nuevo con Hola mundo otra vez.

203
00:14:20,420 --> 00:14:23,140
Y puedes ver que reemplaza todos los guiones.

204
00:14:23,200 --> 00:14:24,170
Entonces eso es todo.

205
00:14:24,310 --> 00:14:29,430
Entonces, de nuevo, el enfoque en este ejercicio fue realmente buscar en Google e intentar encontrar información
