1
00:00:01,130 --> 00:00:04,620
Continuando, ahora hablemos sobre el patrón de descanso.

2
00:00:04,620 --> 00:00:06,680
y también parámetros de descanso

3
00:00:08,610 --> 00:00:12,880
y el resto del patrón se ve exactamente como el operador de propagación.

4
00:00:12,880 --> 00:00:16,292
Entonces tiene la misma sintaxis con los tres puntos.

5
00:00:16,292 --> 00:00:20,670
pero en realidad hace lo contrario del operador de propagación.

6
00:00:20,670 --> 00:00:24,230
Ahora eso no parece tener mucho sentido, ¿verdad?

7
00:00:24,230 --> 00:00:27,190
Pero déjame explicarte, así que recuerda

8
00:00:27,190 --> 00:00:30,990
que usamos el operador de propagación para construir nuevas matrices

9
00:00:30,990 --> 00:00:34,590
o para pasar múltiples valores a una función.

10
00:00:34,590 --> 00:00:38,580
Esos son los dos casos de uso del operador de propagación

11
00:00:38,580 --> 00:00:41,530
y en ambos casos, usamos el operador de propagación

12
00:00:41,530 --> 00:00:45,700
para expandir una matriz en elementos individuales.

13
00:00:45,700 --> 00:00:49,037
Ahora, el patrón de descanso usa exactamente la misma sintaxis

14
00:00:49,037 --> 00:00:52,400
sin embargo, para recopilar múltiples elementos

15
00:00:52,400 --> 00:00:55,100
y condensarlos en una matriz.

16
00:00:55,100 --> 00:00:58,250
así que eso es realmente lo opuesto a la propagación

17
00:00:58,250 --> 00:01:01,470
El operador de propagación es para desempaquetar una matriz

18
00:01:01,470 --> 00:01:05,810
mientras que el resto es empaquetar elementos en una matriz

19
00:01:05,810 --> 00:01:08,010
y como eso suena muy confuso

20
00:01:08,010 --> 00:01:11,235
escribamos un poco de abrigo y comencemos explorando

21
00:01:11,235 --> 00:01:14,410
el caso de uso de construir una carrera.

22
00:01:14,410 --> 00:01:16,610
Así que solo para recapitular en la última lección

23
00:01:16,610 --> 00:01:20,053
usamos para esparcir una matriz como esta.

24
00:01:20,970 --> 00:01:23,080
Así que queríamos crear una nueva matriz

25
00:01:24,230 --> 00:01:25,980
basado en una matriz existente

26
00:01:27,630 --> 00:01:30,383
y entonces usamos el operador de propagación para expandir eso.

27
00:01:32,640 --> 00:01:36,370
Así que aquí todavía estamos usando la sintaxis extendida

28
00:01:36,370 --> 00:01:38,470
y sabemos que esta es la sintaxis extendida

29
00:01:38,470 --> 00:01:41,930
porque lo estamos usando en el lado derecho

30
00:01:41,930 --> 00:01:45,900
del operador de asignación, por lo tanto del signo igual.

31
00:01:45,900 --> 00:01:48,150
Así que déjame escribir eso aquí,

32
00:01:48,150 --> 00:01:53,150
propagación, porque en el lado derecho del operador de asignación

33
00:01:56,140 --> 00:01:59,480
sin embargo, también podemos usarlo en el lado izquierdo

34
00:01:59,480 --> 00:02:03,780
del operador de asignación junto con la desestructuración.

35
00:02:03,780 --> 00:02:07,070
Así que ahora estamos mezclando todo junto aquí

36
00:02:07,070 --> 00:02:09,233
pero tengan paciencia conmigo aquí.

37
00:02:10,525 --> 00:02:14,690
Así que digamos que estamos desestructurando esta matriz

38
00:02:14,690 --> 00:02:16,800
así que primero déjame escribir la matriz aquí

39
00:02:16,800 --> 00:02:20,200
dos, tres, cuatro y cinco

40
00:02:21,470 --> 00:02:24,620
y digamos que quiero tomar el primer elemento

41
00:02:24,620 --> 00:02:27,410
y almacenarlo en la variable A

42
00:02:27,410 --> 00:02:30,970
el segundo elemento a almacenar en la variable B

43
00:02:30,970 --> 00:02:34,150
y ahora puedo usar aquí el patrón de descanso.

44
00:02:34,150 --> 00:02:39,150
Así que la misma sintaxis y ahora llamemos a esto otros

45
00:02:39,740 --> 00:02:41,860
y aquí está el resto de la sintaxis

46
00:02:41,860 --> 00:02:44,040
porque esta en el lado izquierdo

47
00:02:44,040 --> 00:02:45,603
del operador de asignación,

48
00:02:47,470 --> 00:02:50,170
primero escribe eso y luego ve el resultado

49
00:02:50,170 --> 00:02:55,170
porque en el lado izquierdo del signo igual

50
00:02:56,770 --> 00:02:59,200
y ahora registremos A, B

51
00:03:00,390 --> 00:03:03,040
y los demás, sea lo que sea

52
00:03:04,210 --> 00:03:09,140
y así uno, dos y luego básicamente el resto

53
00:03:09,140 --> 00:03:11,450
de los elementos que no seleccionamos

54
00:03:11,450 --> 00:03:14,680
en las variables A y B.

55
00:03:14,680 --> 00:03:17,040
Entonces, ¿Que esta pasando aquí?

56
00:03:17,040 --> 00:03:18,670
Bueno, como antes

57
00:03:18,670 --> 00:03:22,080
el primero y el segundo elementos se convierten en este primero

58
00:03:22,080 --> 00:03:26,950
y segundas variables, pero luego aquí viene el patrón de descanso

59
00:03:26,950 --> 00:03:29,786
y por eso se llama descanso porque tardará

60
00:03:29,786 --> 00:03:31,650
el resto de los elementos.

61
00:03:31,650 --> 00:03:34,580
Así que los elementos restantes de la matriz

62
00:03:34,580 --> 00:03:37,070
y luego ponerlos en una nueva matriz

63
00:03:37,070 --> 00:03:39,930
y en este caso llamamos a esta matriz otros.

64
00:03:39,930 --> 00:03:41,730
Así que como dije al principio,

65
00:03:41,730 --> 00:03:44,150
el resto del patrón básicamente recoge

66
00:03:44,150 --> 00:03:46,410
los elementos que no se utilizan

67
00:03:46,410 --> 00:03:48,563
en la tarea de desestructuración.

68
00:03:51,490 --> 00:03:54,540
Así que veamos otro ejemplo aquí.

69
00:03:54,540 --> 00:03:57,140
y esto le mostrará que en realidad podemos usar

70
00:03:57,140 --> 00:04:02,140
los tres puntos a ambos lados del operador de asignación.

71
00:04:02,390 --> 00:04:05,160
Así que digamos que tenemos esta matriz

72
00:04:05,160 --> 00:04:07,350
cual sera todo el menu

73
00:04:07,350 --> 00:04:09,310
y entonces ya sabemos cómo construir eso

74
00:04:09,310 --> 00:04:10,853
utilizando el operador de propagación.

75
00:04:11,700 --> 00:04:14,890
Así que vamos al menú principal del restaurante dot

76
00:04:16,560 --> 00:04:17,430
eso es punto

77
00:04:18,310 --> 00:04:20,920
entonces sacamos todos los elementos de esa matriz

78
00:04:20,920 --> 00:04:22,890
y ponerlo en una nueva matriz

79
00:04:22,890 --> 00:04:25,180
y luego en esta nueva matriz

80
00:04:25,180 --> 00:04:29,493
también ponemos el menú de entrada, ¿vale?

81
00:04:30,600 --> 00:04:33,290
Así que esto va a ser una matriz, una gran matriz

82
00:04:33,290 --> 00:04:36,410
con todo el menú completo, pero ahora

83
00:04:36,410 --> 00:04:39,860
en realidad también podemos usar el patrón de descanso aquí

84
00:04:39,860 --> 00:04:43,033
y de nuevo, lo hacemos aquí en el lado izquierdo

85
00:04:43,033 --> 00:04:45,163
mientras hacemos la desestructuración.

86
00:04:48,390 --> 00:04:50,770
Así que echemos un vistazo aquí al menú principal.

87
00:04:53,120 --> 00:04:58,120
entonces, digamos que queremos llevarnos la pizza

88
00:04:58,650 --> 00:05:01,070
y el risotto, ¿de acuerdo?

89
00:05:01,070 --> 00:05:03,710
Así que ese es el primero y el tercero.

90
00:05:06,250 --> 00:05:09,920
así que vamos a crear una variable llamada pizza

91
00:05:09,920 --> 00:05:13,080
entonces podemos omitir una variable recuerda,

92
00:05:13,080 --> 00:05:17,010
dejando un hueco ahí en la tarea de desestructuración

93
00:05:17,010 --> 00:05:21,380
entonces llamemos a una variable risotto

94
00:05:21,380 --> 00:05:24,990
y luego simplemente poner bien todos los demás alimentos

95
00:05:24,990 --> 00:05:27,050
en una matriz llamada otra comida

96
00:05:28,000 --> 00:05:30,460
y ahora simplemente registremos todo aquí

97
00:05:30,460 --> 00:05:31,723
a la consola,

98
00:05:39,910 --> 00:05:43,990
Muy bien, entonces tenemos la pizza de hilo.

99
00:05:43,990 --> 00:05:45,710
el risotto de hilo

100
00:05:45,710 --> 00:05:48,810
y luego todo el resto de los elementos

101
00:05:48,810 --> 00:05:52,850
que no seleccionamos previamente en sus propias variables

102
00:05:52,850 --> 00:05:56,130
y tenga en cuenta aquí que el resto de la sintaxis recopila

103
00:05:56,130 --> 00:05:59,680
toda la matriz después de la última variable.

104
00:05:59,680 --> 00:06:02,090
Así que en este caso aquí risotto

105
00:06:03,200 --> 00:06:06,570
por lo que no incluye ningún elemento saltado

106
00:06:06,570 --> 00:06:09,180
así que en realidad es solo el resto de los elementos

107
00:06:09,180 --> 00:06:11,780
y sí otra vez, como dije,

108
00:06:11,780 --> 00:06:15,100
no incluye ningún elemento saltado

109
00:06:15,100 --> 00:06:16,990
y por eso mismo,

110
00:06:16,990 --> 00:06:19,890
el patrón de descanso siempre debe ser el mínimo

111
00:06:19,890 --> 00:06:21,860
en la tarea de desestructuración

112
00:06:21,860 --> 00:06:24,610
porque de lo contrario, ¿cómo sabrá JavaScript

113
00:06:24,610 --> 00:06:29,610
hasta cuándo debería recopilar el resto de la matriz, ¿verdad?

114
00:06:29,690 --> 00:06:32,620
Entonces, por ejemplo, no podríamos hacer esto.

115
00:06:34,920 --> 00:06:37,970
por lo que el mensaje de error es en realidad muy explícito

116
00:06:37,970 --> 00:06:41,593
entonces el elemento resto debe ser el último elemento.

117
00:06:43,540 --> 00:06:46,650
Muy bien, y también por la misma razón.

118
00:06:46,650 --> 00:06:49,515
solo puede haber un descanso

119
00:06:49,515 --> 00:06:54,210
en cualquier tarea de desestructuración, ¿de acuerdo?

120
00:06:55,350 --> 00:06:57,970
y ahora hagamos lo mismo en objetos

121
00:06:57,970 --> 00:07:02,480
porque también funciona de hecho en objetos.

122
00:07:02,480 --> 00:07:04,190
Así que la diferencia entonces, por supuesto,

123
00:07:04,190 --> 00:07:06,830
es que los elementos restantes se recogerán

124
00:07:06,830 --> 00:07:10,870
en un nuevo objeto y no en una nueva matriz.

125
00:07:10,870 --> 00:07:14,500
Así que no trabajemos aquí con nuestro horario de apertura.

126
00:07:14,500 --> 00:07:19,500
y digamos que queremos seleccionar solo sábado aquí

127
00:07:20,150 --> 00:07:23,410
y luego el resto debe ir a un nuevo objeto

128
00:07:23,410 --> 00:07:25,780
cuales son los dias de semana.

129
00:07:25,780 --> 00:07:27,580
Así que el sábado es fin de semana

130
00:07:27,580 --> 00:07:31,740
y el viernes y el jueves son los días de semana

131
00:07:31,740 --> 00:07:35,150
y básicamente queremos crear un objeto

132
00:07:35,150 --> 00:07:36,970
solo con estos dos.

133
00:07:36,970 --> 00:07:41,970
Entonces solo para los días de semana y ahora eso es fácil de hacer

134
00:07:42,340 --> 00:07:47,070
todo lo que tenemos que hacer es básicamente sacar un sábado

135
00:07:47,070 --> 00:07:48,770
en su propia variable

136
00:07:48,770 --> 00:07:53,060
y luego simplemente recolectamos el resto en un nuevo objeto

137
00:07:53,060 --> 00:07:57,923
y esto lo podemos llamar días de semana, ¿de acuerdo?

138
00:07:58,820 --> 00:08:01,090
Y luego aquí, por supuesto, el objeto

139
00:08:01,090 --> 00:08:05,300
que somos, punto de desestructuración horario de apertura

140
00:08:05,300 --> 00:08:09,220
y ahora echemos un vistazo a nuestros días de semana aquí

141
00:08:10,700 --> 00:08:14,110
y de hecho es exactamente lo que esperábamos.

142
00:08:14,110 --> 00:08:17,690
Es un objeto que solo contiene viernes y jueves.

143
00:08:18,550 --> 00:08:21,670
y otra vez, eso es porque ya nos llevamos el sabado

144
00:08:21,670 --> 00:08:24,160
en su propia variable antes

145
00:08:24,160 --> 00:08:26,985
y así este luego recogió el resto de las propiedades

146
00:08:26,985 --> 00:08:30,070
en su propio objeto nuevo.

147
00:08:30,070 --> 00:08:33,200
Genial, así que ahora sabemos cómo el patrón de descanso

148
00:08:33,200 --> 00:08:37,620
trabaja para recopilar elementos en una tarea de desestructuración

149
00:08:39,220 --> 00:08:41,493
y en realidad vamos a escribir eso aquí.

150
00:08:43,190 --> 00:08:45,910
Así que toda esta primera parte es para desestructurar

151
00:08:50,690 --> 00:08:55,690
y luego la segunda parte será básicamente sobre funciones.

152
00:08:59,510 --> 00:09:03,230
Entonces, recuerda que también para el operador de propagación

153
00:09:03,230 --> 00:09:06,720
el segundo caso de uso fue pasar múltiples argumentos

154
00:09:06,720 --> 00:09:09,560
en una función todo al mismo tiempo.

155
00:09:09,560 --> 00:09:11,680
Así que eso es exactamente lo que hicimos aquí.

156
00:09:11,680 --> 00:09:16,410
en nuestro ejemplo real, con esta matriz de ingredientes, ¿verdad?

157
00:09:16,410 --> 00:09:17,660
Así que teníamos una matriz

158
00:09:17,660 --> 00:09:21,250
y luego expandimos todos estos elementos de la matriz

159
00:09:21,250 --> 00:09:23,650
para básicamente pasar estos elementos entonces

160
00:09:23,650 --> 00:09:26,980
como argumentos individuales de la función

161
00:09:29,010 --> 00:09:30,416
y ahora, como puedes adivinar

162
00:09:30,416 --> 00:09:33,910
el resto del operador básicamente puede hacer lo contrario

163
00:09:34,820 --> 00:09:38,563
y ahora escribamos un ejemplo, función de deuda.

164
00:09:39,820 --> 00:09:42,730
Así que lo llamaré agregar

165
00:09:42,730 --> 00:09:44,960
y así en una función de suma real

166
00:09:44,960 --> 00:09:48,040
queremos tomar una cantidad arbitraria de argumentos

167
00:09:48,040 --> 00:09:50,903
y simplemente sumarlos todos juntos, ¿verdad?

168
00:09:52,280 --> 00:09:56,440
Así que funciona y por ahora, dejémoslo así.

169
00:09:58,620 --> 00:10:00,480
y entonces permítanme ilustrar

170
00:10:00,480 --> 00:10:03,170
cómo queremos llamar a esta función, en realidad.

171
00:10:03,170 --> 00:10:05,790
Así que queremos ser capaces de hacer, por ejemplo,

172
00:10:05,790 --> 00:10:09,924
este dos y tres, nos daría cinco

173
00:10:09,924 --> 00:10:13,830
pero entonces también podríamos querer poder hacer esto

174
00:10:13,830 --> 00:10:18,830
cinco y tres y siete y dos, por ejemplo.

175
00:10:19,500 --> 00:10:22,580
De nuevo, cualquier cantidad arbitraria de argumentos

176
00:10:22,580 --> 00:10:24,200
debería funcionar para esta función

177
00:10:26,130 --> 00:10:29,370
así que algo como esto, por ejemplo,

178
00:10:29,370 --> 00:10:31,580
pero por supuesto no vamos a especificar

179
00:10:31,580 --> 00:10:34,740
como siete argumentos aquí, ¿verdad?

180
00:10:34,740 --> 00:10:36,860
Entonces, ¿cómo podemos hacer eso?

181
00:10:36,860 --> 00:10:39,440
Bueno, usaremos el patrón de descanso

182
00:10:40,310 --> 00:10:44,510
y en este caso, en realidad se llama parámetros de descanso.

183
00:10:44,510 --> 00:10:47,210
Así que usemos la sintaxis de descanso

184
00:10:47,210 --> 00:10:50,050
y luego llamemos a este argumento números

185
00:10:50,050 --> 00:10:55,050
y luego registre estos números en la consola.

186
00:10:55,680 --> 00:10:58,370
Así que esta función se va a llamar tres veces.

187
00:10:59,390 --> 00:11:02,770
por lo que esperamos tres resultados aquí

188
00:11:03,700 --> 00:11:06,870
y lo que vemos aquí son tres carreras

189
00:11:06,870 --> 00:11:10,390
con todos los argumentos que pasamos a las funciones

190
00:11:10,390 --> 00:11:12,490
pero en verdad son una raza

191
00:11:12,490 --> 00:11:15,570
y ahora una vez más, como dije al principio

192
00:11:15,570 --> 00:11:19,020
el resto de la sintaxis está tomando múltiples números

193
00:11:19,020 --> 00:11:24,020
o múltiples valores y luego los empaqueta todos en una matriz.

194
00:11:24,180 --> 00:11:26,120
Entonces, una vez más está haciendo lo contrario.

195
00:11:26,120 --> 00:11:28,100
del operador de propagación

196
00:11:28,100 --> 00:11:30,292
entonces con el operador de propagación expandimos

197
00:11:30,292 --> 00:11:33,690
con el resto de sintaxis comprimimos

198
00:11:33,690 --> 00:11:37,400
así que aquí se llama argumentos de descanso, ¿de acuerdo?

199
00:11:37,400 --> 00:11:39,810
Y ahora podemos escribir algo de lógica simple aquí

200
00:11:39,810 --> 00:11:42,450
para realmente sumar todos los números juntos.

201
00:11:42,450 --> 00:11:44,360
Creo que ya lo hicimos.

202
00:11:44,360 --> 00:11:49,060
Así que aquí está nuestra variable de suma que se acumulará

203
00:11:49,060 --> 00:11:51,990
entonces escribamos un bucle for simple

204
00:11:51,990 --> 00:11:54,180
y también podrías hacer este año como un reto

205
00:11:54,180 --> 00:11:55,460
si lo quieres

206
00:11:55,460 --> 00:11:57,713
pero de todos modos, lo haré de inmediato.

207
00:11:59,090 --> 00:12:01,769
Entonces sabemos que los números son una matriz

208
00:12:01,769 --> 00:12:05,290
y entonces podemos tomar la longitud de esa matriz

209
00:12:05,290 --> 00:12:06,780
y ejecutar este ciclo

210
00:12:06,780 --> 00:12:10,480
siempre que el contador esté por debajo de la longitud de la matriz

211
00:12:10,480 --> 00:12:15,480
y en cada iteración simplemente sumamos el número actual

212
00:12:16,350 --> 00:12:21,350
al valor de la suma actual básicamente.

213
00:12:21,630 --> 00:12:23,140
Así que estoy escribiendo esto muy rápido

214
00:12:23,140 --> 00:12:26,900
porque ya hicimos esto antes, ¿de acuerdo?

215
00:12:26,900 --> 00:12:29,980
Y entonces esto no debería ser nada nuevo en este momento.

216
00:12:29,980 --> 00:12:33,770
y ahora para terminar podemos registrar esta suma en la consola

217
00:12:33,770 --> 00:12:35,270
para obtener algunos resultados

218
00:12:35,270 --> 00:12:38,060
y de hecho este año ya son cinco

219
00:12:39,110 --> 00:12:42,460
y entonces esto es en este punto una función de trabajo

220
00:12:42,460 --> 00:12:46,310
que puede aceptar cualquier número de parámetros

221
00:12:46,310 --> 00:12:50,230
y espero que aún no estés confundido por esto

222
00:12:51,340 --> 00:12:55,020
y ahora quiero llevarlo incluso al siguiente nivel.

223
00:12:55,020 --> 00:12:58,970
Entonces, creemos otra matriz más, llamémosla X

224
00:12:58,970 --> 00:13:00,456
porque no es importante

225
00:13:00,456 --> 00:13:05,456
y pondré los números 23 y digamos cinco y siete.

226
00:13:08,020 --> 00:13:11,350
Así que ahora si quisiéramos tomar estos valores aquí

227
00:13:11,350 --> 00:13:12,920
y llamar a la función de añadir

228
00:13:12,920 --> 00:13:16,810
con estos tres valores, ¿cómo haríamos eso?

229
00:13:16,810 --> 00:13:18,640
Bueno, simplemente suficiente

230
00:13:18,640 --> 00:13:22,567
simplemente usamos el operador de propagación y eso es todo

231
00:13:22,567 --> 00:13:25,090
y esto es exactamente lo que aprendimos

232
00:13:25,090 --> 00:13:27,090
en la conferencia anterior.

233
00:13:27,090 --> 00:13:29,660
Así que estamos tomando todos los números de la matriz.

234
00:13:29,660 --> 00:13:31,200
y difundirlos aquí

235
00:13:31,200 --> 00:13:33,860
y entonces esto sería lo mismo que escribir manualmente

236
00:13:33,860 --> 00:13:36,630
23, cinco y siete

237
00:13:36,630 --> 00:13:38,520
y entonces este es un buen ejemplo de mostrarte

238
00:13:38,520 --> 00:13:41,700
qué tan extendido es lo contrario de resto

239
00:13:41,700 --> 00:13:44,890
porque después de que estos números se difundan aquí

240
00:13:44,890 --> 00:13:48,280
luego ingresarán esta función de agregar aquí

241
00:13:48,280 --> 00:13:51,300
y luego serán inmediatamente recogidos

242
00:13:51,300 --> 00:13:56,200
en esta matriz de números por los demás parámetros, ¿de acuerdo?

243
00:13:56,200 --> 00:13:58,267
Así que aquí desempaquetamos los valores.

244
00:13:58,267 --> 00:14:01,750
y aquí empaquetarlos de nuevo en una matriz

245
00:14:02,700 --> 00:14:04,780
y en realidad podrías estar preguntándote

246
00:14:04,780 --> 00:14:08,260
por qué no estamos simplemente escribiendo una función de suma

247
00:14:08,260 --> 00:14:10,890
que toma una matriz como argumento

248
00:14:10,890 --> 00:14:13,300
y entonces no necesitamos todo esto.

249
00:14:13,300 --> 00:14:15,970
Bueno, es mucho mejor hacerlo así.

250
00:14:15,970 --> 00:14:19,420
porque entonces la función puede aceptar tanto una matriz

251
00:14:19,420 --> 00:14:21,300
básicamente haciendo esto

252
00:14:21,300 --> 00:14:25,330
y simplemente todos los valores individuales como este

253
00:14:25,330 --> 00:14:28,100
y también se siente un poco más natural

254
00:14:28,100 --> 00:14:32,410
para simplemente pasar tantos argumentos como queramos sumar

255
00:14:32,410 --> 00:14:33,770
en la función.

256
00:14:33,770 --> 00:14:38,050
Entonces, sin tener que lidiar con arreglos si no queremos

257
00:14:38,050 --> 00:14:41,440
y entonces este resto de parámetros es algo

258
00:14:41,440 --> 00:14:42,996
que verás todo el tiempo

259
00:14:42,996 --> 00:14:46,210
en la base del código JavaScript moderno.

260
00:14:46,210 --> 00:14:48,470
Bien, y ahora solo para terminar esto

261
00:14:48,470 --> 00:14:50,990
usemos parámetros de descanso

262
00:14:50,990 --> 00:14:55,990
en nuestro ejemplo de restaurante aquí también para ver algunos casos extremos.

263
00:14:56,810 --> 00:14:59,965
Así que agreguemos otro método aquí

264
00:14:59,965 --> 00:15:04,513
y esta vez el método se tratará de pedir pizza.

265
00:15:05,570 --> 00:15:08,620
Así que pide pizza

266
00:15:10,390 --> 00:15:14,780
y ahora las pizzas deben tener al menos un ingrediente

267
00:15:14,780 --> 00:15:17,640
pero los demás ingredientes son opcionales

268
00:15:17,640 --> 00:15:21,530
y para este descanso los parámetros son perfectos.

269
00:15:21,530 --> 00:15:26,530
Así que digamos ingrediente principal y luego los demás ingredientes

270
00:15:31,430 --> 00:15:34,220
y luego esto va a funcionar un poco

271
00:15:34,220 --> 00:15:36,946
como desestructurar de nuevo donde

272
00:15:36,946 --> 00:15:40,310
esto aquí básicamente recopilaremos todo el resto

273
00:15:40,310 --> 00:15:43,210
de los argumentos en una matriz.

274
00:15:43,210 --> 00:15:47,390
Así que veamos ese ingrediente tan principal

275
00:15:48,670 --> 00:15:52,383
y eso ha registrado los otros ingredientes, ¿de acuerdo?

276
00:15:54,950 --> 00:15:56,660
Y ahora vamos a pedir pizza

277
00:16:03,100 --> 00:16:06,620
así que los restaurantes pensaron pedir pizza

278
00:16:06,620 --> 00:16:09,770
y ahora aquí especificamos nuestros ingredientes.

279
00:16:09,770 --> 00:16:14,770
Así que digamos champiñones, cebolla, aceitunas y espinacas.

280
00:16:18,400 --> 00:16:20,780
así que una buena pizza vegetariana aquí

281
00:16:22,240 --> 00:16:25,300
y como ves podemos especificar tantos argumentos

282
00:16:25,300 --> 00:16:29,460
como queramos salvemos esto

283
00:16:29,460 --> 00:16:31,320
y ves aquí abajo inmediatamente

284
00:16:31,320 --> 00:16:35,810
que obtenemos champiñones, que es este primer ingrediente aquí

285
00:16:35,810 --> 00:16:37,210
y luego obtenemos una matriz

286
00:16:37,210 --> 00:16:41,510
de todos los ingredientes restantes que pasamos en

287
00:16:41,510 --> 00:16:45,890
y entonces esto, por supuesto, es el resultado de los demás argumentos.

288
00:16:45,890 --> 00:16:49,340
Entonces, nuevamente el primer argumento fue almacenado

289
00:16:49,340 --> 00:16:53,730
en este argumento principal aquí

290
00:16:53,730 --> 00:16:56,350
y luego todos los argumentos restantes que se pasaron

291
00:16:56,350 --> 00:16:59,750
en simplemente se almacenaron en esta matriz

292
00:16:59,750 --> 00:17:04,210
por el parámetro de descanso de la sintaxis, ¿de acuerdo?

293
00:17:04,210 --> 00:17:07,773
Y, por supuesto, también podríamos simplemente definir solo uno.

294
00:17:09,460 --> 00:17:14,460
Así que pidamos ahora una pizza solo con champiñones.

295
00:17:16,230 --> 00:17:21,230
entonces los argumentos restantes aquí simplemente se pondrán

296
00:17:21,390 --> 00:17:25,360
en una matriz vacía porque, por supuesto, no hay ninguno

297
00:17:25,360 --> 00:17:28,640
y entonces no hay nada que recolectar en la matriz

298
00:17:28,640 --> 00:17:30,718
pero todavía obtenemos una matriz vacía

299
00:17:30,718 --> 00:17:33,800
con los que podemos trabajar si queremos.

300
00:17:33,800 --> 00:17:36,289
Entonces, en esa función, ahora podríamos crear algo de lógica.

301
00:17:36,289 --> 00:17:40,770
gusta crear una cadena basada en todos estos ingredientes.

302
00:17:40,770 --> 00:17:43,459
Pero no voy a entrar en eso ahora

303
00:17:43,459 --> 00:17:45,480
pero si quieres divertirte un poco

304
00:17:45,480 --> 00:17:49,033
entonces, por supuesto, siéntase libre de hacerlo usted mismo.

305
00:17:50,730 --> 00:17:53,940
De todos modos, lo que se quita de este ejemplo es que

306
00:17:53,940 --> 00:17:57,710
una vez más el resto de parámetros sirve para recoger

307
00:17:57,710 --> 00:18:01,650
todos los parámetros restantes básicamente no utilizados

308
00:18:01,650 --> 00:18:05,853
que no se utilizaron en este parámetro.

309
00:18:08,950 --> 00:18:11,100
Muy bien, entonces recapitulemos

310
00:18:11,100 --> 00:18:15,470
después de otra tranquila y larga conferencia aquí.

311
00:18:15,470 --> 00:18:18,000
Entonces, la sintaxis de propagación y descanso

312
00:18:18,000 --> 00:18:20,150
ambos se ven exactamente iguales

313
00:18:20,150 --> 00:18:22,560
pero funcionan de manera opuesta

314
00:18:22,560 --> 00:18:25,860
según donde se utilicen.

315
00:18:25,860 --> 00:18:28,120
Entonces se usa el operador de propagación

316
00:18:28,120 --> 00:18:32,940
donde de otro modo escribiríamos valores, separados por una coma.

317
00:18:32,940 --> 00:18:36,490
Por otro lado, el patrón de descanso se usa básicamente

318
00:18:36,490 --> 00:18:39,960
donde de otro modo escribiríamos nombres de variables

319
00:18:39,960 --> 00:18:41,713
separado por comas.

320
00:18:42,700 --> 00:18:45,460
Entonces, nuevamente se puede usar el patrón de descanso

321
00:18:45,460 --> 00:18:49,600
donde escribiríamos los nombres de las variables, separados por comas

322
00:18:49,600 --> 00:18:52,830
y no valores separados por comas.

323
00:18:52,830 --> 00:18:56,210
Así que es una distinción sutil, pero así es como sabes

324
00:18:56,210 --> 00:18:59,393
cuándo y dónde usar esparcir y descansar.