1
00:00:01,160 --> 00:00:04,180
Volvamos a dos operadores lógicos.

2
00:00:04,180 --> 00:00:06,100
que ya usamos antes,

3
00:00:06,100 --> 00:00:08,910
pero aún no usamos todo su potencial.

4
00:00:08,910 --> 00:00:11,110
Y estoy hablando del operador AND

5
00:00:11,110 --> 00:00:12,990
y el operador OR,

6
00:00:12,990 --> 00:00:14,460
y como podemos usarlos

7
00:00:14,460 --> 00:00:17,063
por algo llamado cortocircuito.

8
00:00:19,080 --> 00:00:20,690
Así que hasta este punto,

9
00:00:20,690 --> 00:00:22,740
hemos usado operadores lógicos

10
00:00:22,740 --> 00:00:25,480
solo para combinar valores booleanos.

11
00:00:25,480 --> 00:00:27,990
Pero la verdad es que podemos hacer mucho más

12
00:00:27,990 --> 00:00:30,840
con los operadores AND y OR.

13
00:00:30,840 --> 00:00:35,400
Entonces, comencemos con el operador OR aquí.

14
00:00:35,400 --> 00:00:38,090
Y entonces déjame registrar, tres,

15
00:00:38,090 --> 00:00:41,240
o Jonás.

16
00:00:41,240 --> 00:00:44,160
Así que eso es algo que no hicimos antes,

17
00:00:44,160 --> 00:00:47,912
que es usar básicamente valores no booleanos aquí

18
00:00:47,912 --> 00:00:50,093
como los operandos, ¿de acuerdo?

19
00:00:51,010 --> 00:00:54,123
Entonces, veamos cuál será el resultado de esto,

20
00:00:54,960 --> 00:00:58,150
y por alguna razón tengo que recargar aquí,

21
00:00:58,150 --> 00:01:01,230
y ves que el resultado es tres.

22
00:01:01,230 --> 00:01:03,050
Y eso significa que los resultados

23
00:01:03,050 --> 00:01:05,450
del operador OR no siempre

24
00:01:05,450 --> 00:01:07,070
tiene que ser un booleano.

25
00:01:07,070 --> 00:01:09,770
Y eso es algo que no les mostré antes.

26
00:01:11,780 --> 00:01:13,310
Entonces hay tres propiedades.

27
00:01:13,310 --> 00:01:16,890
que no te dije antes sobre los operadores lógicos.

28
00:01:16,890 --> 00:01:21,063
Primero, pueden usar cualquier tipo de datos.

29
00:01:23,970 --> 00:01:28,430
Pueden devolver cualquier tipo de datos.

30
00:01:28,430 --> 00:01:29,460
y hacen algo

31
00:01:29,460 --> 00:01:32,293
llamado cortocircuito,

32
00:01:34,870 --> 00:01:38,950
o como también lo llamamos evaluación de cortocircuito.

33
00:01:38,950 --> 00:01:42,090
De hecho, aquí usamos dos valores

34
00:01:42,090 --> 00:01:44,740
que no son booleanos, ¿de acuerdo?

35
00:01:44,740 --> 00:01:46,600
Y luego devolvió un valor

36
00:01:46,600 --> 00:01:48,560
eso no era un booleano.

37
00:01:48,560 --> 00:01:51,140
Y ahora sobre el cortocircuito,

38
00:01:51,140 --> 00:01:53,210
en el caso del operador OR,

39
00:01:53,210 --> 00:01:56,700
cortocircuito significa que si el primer valor

40
00:01:56,700 --> 00:01:58,500
es un valor verdadero,

41
00:01:58,500 --> 00:02:02,270
inmediatamente devolverá ese primer valor.

42
00:02:02,270 --> 00:02:04,100
Así que eso es exactamente lo que vemos aquí.

43
00:02:04,100 --> 00:02:07,790
con los tres que es un valor veraz.

44
00:02:07,790 --> 00:02:12,130
De nuevo, si el primer operando es verdadero aquí

45
00:02:12,130 --> 00:02:13,680
en el operador OR,

46
00:02:13,680 --> 00:02:17,300
entonces el otro operando ni siquiera será evaluado.

47
00:02:17,300 --> 00:02:20,480
Entonces JavaScript ni siquiera lo mirará.

48
00:02:20,480 --> 00:02:23,383
Y eso es lo que queremos decir con cortocircuito.

49
00:02:25,689 --> 00:02:27,390
Y ahora vamos a hacer un poco más,

50
00:02:27,390 --> 00:02:29,610
usemos la cadena vacía

51
00:02:29,610 --> 00:02:32,373
o Jonas ahora.

52
00:02:34,290 --> 00:02:39,023
Entonces digamos, verdadero o cero,

53
00:02:41,401 --> 00:02:43,903
y luego digamos indefinido o nulo.

54
00:02:47,110 --> 00:02:49,830
Y ahora antes de echar un vistazo al resultado,

55
00:02:49,830 --> 00:02:52,170
tratar de adivinar cuáles son los resultados

56
00:02:52,170 --> 00:02:54,853
de estas tres operaciones aquí será.

57
00:02:55,960 --> 00:02:57,520
¿Así que hiciste eso?

58
00:02:57,520 --> 00:02:58,483
Entonces, veamos.

59
00:02:59,370 --> 00:03:02,990
Así que el primer resultado de este aquí es Jonas.

60
00:03:02,990 --> 00:03:07,020
Y eso es porque esto aquí es un valor falso.

61
00:03:07,020 --> 00:03:08,820
Y entonces, el segundo operando

62
00:03:08,820 --> 00:03:12,980
en realidad también será evaluado, y ese es Jonas

63
00:03:12,980 --> 00:03:15,250
y luego será devuelto.

64
00:03:15,250 --> 00:03:18,060
Y aquí vemos de nuevo que el resultado

65
00:03:18,060 --> 00:03:19,600
del operador OR

66
00:03:19,600 --> 00:03:21,780
no tiene que ser un booleano.

67
00:03:21,780 --> 00:03:25,070
Simplemente devolverá el valor veraz aquí.

68
00:03:25,070 --> 00:03:28,100
A continuación tenemos verdadero o cero.

69
00:03:28,100 --> 00:03:30,750
Y entonces este primer valor aquí es verdadero,

70
00:03:30,750 --> 00:03:32,610
y de hecho, es incluso cierto,

71
00:03:32,610 --> 00:03:35,320
y por lo tanto ese será simplemente el resultado

72
00:03:35,320 --> 00:03:36,840
del operador

73
00:03:36,840 --> 00:03:38,490
Y eso es lo que vemos aquí.

74
00:03:38,490 --> 00:03:41,840
Y luego, aquí tenemos indefinido o nulo,

75
00:03:41,840 --> 00:03:45,450
y como ya sabes, indefinido es un valor falso,

76
00:03:45,450 --> 00:03:48,360
y entonces vamos al segundo operando,

77
00:03:48,360 --> 00:03:50,380
para que no haya cortocircuito,

78
00:03:50,380 --> 00:03:53,670
y entonces ese es el que va a ser devuelto.

79
00:03:53,670 --> 00:03:55,110
Así que aquí vemos nulo,

80
00:03:55,110 --> 00:03:57,480
y eso sucede aunque nulo

81
00:03:57,480 --> 00:04:00,480
es también un valor falso.

82
00:04:00,480 --> 00:04:02,660
Y ahora vamos a generalizar esto

83
00:04:02,660 --> 00:04:04,450
a más operadores.

84
00:04:04,450 --> 00:04:06,950
Así que puedo darte básicamente la regla general.

85
00:04:06,950 --> 00:04:09,060
de cómo funciona este operador,

86
00:04:09,060 --> 00:04:11,520
no importa con cuántos valores.

87
00:04:11,520 --> 00:04:16,100
Así que digamos indefinido o cero

88
00:04:16,100 --> 00:04:18,820
o cadena vacía,

89
00:04:18,820 --> 00:04:21,253
o hola,

90
00:04:22,190 --> 00:04:24,263
o 23,

91
00:04:25,520 --> 00:04:26,793
o nulo.

92
00:04:27,630 --> 00:04:30,763
Entonces, ¿cuál crees que será el resultado de este?

93
00:04:32,280 --> 00:04:33,940
Y es hola.

94
00:04:33,940 --> 00:04:36,660
Y eso es esencialmente porque hola aquí,

95
00:04:36,660 --> 00:04:38,840
es el primer valor verdadero

96
00:04:38,840 --> 00:04:42,130
en esta cadena de operaciones OR.

97
00:04:42,130 --> 00:04:43,720
Así que empezamos con este,

98
00:04:43,720 --> 00:04:46,040
tan indefinido es falso.

99
00:04:46,040 --> 00:04:48,887
Y entonces pasamos al siguiente, que también es falso.

100
00:04:48,887 --> 00:04:52,440
Y así luego a la siguiente, que también es falsa,

101
00:04:52,440 --> 00:04:54,530
y luego nos saludamos

102
00:04:54,530 --> 00:04:56,180
y hola es verdad

103
00:04:56,180 --> 00:05:00,480
y por lo tanto cortocircuitará toda la evaluación

104
00:05:00,480 --> 00:05:03,860
y será el valor devuelto, ¿de acuerdo?

105
00:05:03,860 --> 00:05:05,800
Y si pensamos en esto,

106
00:05:05,800 --> 00:05:07,710
entonces realmente tiene sentido.

107
00:05:07,710 --> 00:05:10,310
Porque recuerda, en la operación OR,

108
00:05:10,310 --> 00:05:11,490
el resultado es cierto,

109
00:05:11,490 --> 00:05:15,030
si al menos un operando es verdadero, ¿verdad?

110
00:05:15,030 --> 00:05:17,420
Entonces, si el primer operando ya es verdadero,

111
00:05:17,420 --> 00:05:19,890
por ejemplo, como sucede aquí,

112
00:05:19,890 --> 00:05:22,450
entonces JavaScript ni siquiera tiene que mirar

113
00:05:22,450 --> 00:05:25,620
en los otros valores porque el resultado de la expresión

114
00:05:25,620 --> 00:05:27,920
ya será cierto de todos modos.

115
00:05:27,920 --> 00:05:30,870
Y entonces hará un cortocircuito y luego simplemente regresará

116
00:05:30,870 --> 00:05:32,093
ese primer resultado.

117
00:05:32,940 --> 00:05:37,320
Y ahora veamos una aplicación más práctica de esto.

118
00:05:37,320 --> 00:05:40,220
Así que digamos que podría haber una propiedad

119
00:05:40,220 --> 00:05:44,040
en el objeto restaurante con el número de comensales.

120
00:05:44,040 --> 00:05:45,493
Así que algo como esto:

121
00:05:46,600 --> 00:05:50,410
Restaurante dot num invitados,

122
00:05:50,410 --> 00:05:53,520
pero de nuevo, no sabemos si existe.

123
00:05:53,520 --> 00:05:56,830
Sin embargo, queremos definir básicamente una variable

124
00:05:56,830 --> 00:05:59,250
en base a este número de invitados.

125
00:05:59,250 --> 00:06:01,380
Y queremos establecer un valor predeterminado

126
00:06:01,380 --> 00:06:03,080
si esto no existe.

127
00:06:03,080 --> 00:06:05,573
Básicamente, lo que queremos hacer es esto.

128
00:06:07,950 --> 00:06:10,943
Así que invitados, lo llamaré uno aquí,

129
00:06:12,150 --> 00:06:14,850
y entonces lo que queremos hacer es esto,

130
00:06:14,850 --> 00:06:16,810
queremos comprobar si existe,

131
00:06:16,810 --> 00:06:19,174
y entonces el resultado debe ser

132
00:06:19,174 --> 00:06:23,950
en realidad el restaurante dot num invitados,

133
00:06:23,950 --> 00:06:25,620
pero si no existe,

134
00:06:25,620 --> 00:06:29,053
entonces queremos establecer un valor predeterminado de 10.

135
00:06:30,240 --> 00:06:33,133
Así que registremos invitados uno en la consola,

136
00:06:34,840 --> 00:06:37,210
y entonces ves que ahora son 10.

137
00:06:37,210 --> 00:06:40,360
Y eso es porque el restaurante dot num invitados

138
00:06:40,360 --> 00:06:43,017
no existe, por lo que esto no está definido,

139
00:06:43,017 --> 00:06:45,980
y por lo tanto 10 será el resultado

140
00:06:45,980 --> 00:06:50,200
de este operador de tornería, ¿de acuerdo?

141
00:06:50,200 --> 00:06:52,910
Pero ahora si establecemos la propiedad

142
00:06:54,440 --> 00:06:55,323
como esto,

143
00:06:56,250 --> 00:06:58,470
por ejemplo, a 23,

144
00:06:58,470 --> 00:07:01,133
entonces los invitados uno va a tener 23.

145
00:07:02,020 --> 00:07:04,250
Entonces, pero en lugar de hacer esto,

146
00:07:04,250 --> 00:07:07,260
podemos aprovechar los cortocircuitos

147
00:07:07,260 --> 00:07:08,563
y el operador OR.

148
00:07:10,000 --> 00:07:14,830
Entonces, escribamos de nuevo el número de invitados del restaurante,

149
00:07:14,830 --> 00:07:18,710
y luego simplemente o 10.

150
00:07:18,710 --> 00:07:20,673
Así que analicemos por qué esto funciona.

151
00:07:21,950 --> 00:07:25,150
Y primero almacene esto en una variable.

152
00:07:25,150 --> 00:07:27,070
Así que invitados dos

153
00:07:27,070 --> 00:07:28,040
es igual a esto

154
00:07:29,623 --> 00:07:32,773
y luego la consola registra a los invitados dos.

155
00:07:33,660 --> 00:07:35,930
Así que echemos un vistazo a por qué esto funciona

156
00:07:35,930 --> 00:07:39,390
y comenzando de nuevo con deshabilitar esto.

157
00:07:39,390 --> 00:07:42,570
Y ahora mismo los restaurantes salpican el número de invitados

158
00:07:42,570 --> 00:07:43,930
es indefinido.

159
00:07:43,930 --> 00:07:45,550
Entonces es un valor falso,

160
00:07:45,550 --> 00:07:47,040
y como ya sabemos,

161
00:07:47,040 --> 00:07:48,870
entonces el segundo valor aquí

162
00:07:48,870 --> 00:07:51,820
será el resultado del operador OR.

163
00:07:51,820 --> 00:07:56,010
Y así, ese es básicamente nuestro valor predeterminado de 10.

164
00:07:56,010 --> 00:07:59,343
Así que echemos un vistazo y de hecho tenemos 10 aquí.

165
00:08:00,290 --> 00:08:02,860
Pero ahora si lo volvemos a poner,

166
00:08:02,860 --> 00:08:07,430
entonces el número de comensales del punto del restaurante ahora es 23,

167
00:08:07,430 --> 00:08:09,100
que es un valor verdadero,

168
00:08:09,100 --> 00:08:12,210
y por lo tanto el operador OR cortocircuita

169
00:08:12,210 --> 00:08:15,480
y se convertirá en el valor de retorno,

170
00:08:15,480 --> 00:08:18,850
o digamos el resultado de la operación.

171
00:08:18,850 --> 00:08:21,720
Y ahora, de hecho, tenemos 23.

172
00:08:21,720 --> 00:08:24,020
Y este es un método mucho más fácil.

173
00:08:24,020 --> 00:08:25,960
de establecer valores predeterminados

174
00:08:25,960 --> 00:08:28,580
que tener que lidiar con este tornero

175
00:08:28,580 --> 00:08:32,960
o peor aún, una declaración if else, ¿de acuerdo?

176
00:08:32,960 --> 00:08:36,010
Eso es un cortocircuito con el operador AND,

177
00:08:36,010 --> 00:08:39,300
pero también podemos hacer lo mismo con el operador OR,

178
00:08:39,300 --> 00:08:42,380
pero el operador AND también tiene cortocircuito.

179
00:08:42,380 --> 00:08:43,600
Así que echemos un vistazo

180
00:08:44,500 --> 00:08:48,170
y comenzará registrando algo en la consola aquí,

181
00:08:48,170 --> 00:08:49,833
como una cuerda para separar,

182
00:08:54,360 --> 00:08:57,600
para que no nos confundamos con los resultados

183
00:08:57,600 --> 00:08:58,803
y la consola entonces.

184
00:09:01,500 --> 00:09:05,010
Oh, pero antes de hablar sobre el operador AND aquí,

185
00:09:05,010 --> 00:09:06,520
en realidad hay una cosa más

186
00:09:06,520 --> 00:09:08,140
que necesito decirte aquí,

187
00:09:08,140 --> 00:09:11,350
que es que ambas soluciones aquí,

188
00:09:11,350 --> 00:09:13,630
esto y esto no funcionará

189
00:09:13,630 --> 00:09:16,033
cuando el número de invitados es cero.

190
00:09:17,000 --> 00:09:18,300
Entonces, veamos qué sucede.

191
00:09:19,680 --> 00:09:21,940
Y ahora ambos tienen 10.

192
00:09:21,940 --> 00:09:24,330
Y ese no es el resultado que queremos,

193
00:09:24,330 --> 00:09:27,330
pero dado lo que ya sabemos, tiene sentido

194
00:09:27,330 --> 00:09:28,950
porque esto ahora es cero,

195
00:09:28,950 --> 00:09:30,630
por lo que es un valor falso,

196
00:09:30,630 --> 00:09:33,840
y por lo tanto el segundo aquí será el resultado

197
00:09:33,840 --> 00:09:38,220
de la operación y por lo tanto asignó a los invitados dos.

198
00:09:38,220 --> 00:09:41,720
Sin embargo, cero es el número real de invitados.

199
00:09:41,720 --> 00:09:43,580
Y ese es el valor que en realidad

200
00:09:43,580 --> 00:09:46,680
tendrían dos invitados.

201
00:09:46,680 --> 00:09:49,900
Pero en su lugar, se establece el valor predeterminado de 10.

202
00:09:49,900 --> 00:09:52,480
Así que obviamente eso no es lo que queremos.

203
00:09:52,480 --> 00:09:55,360
y exploraremos una gran solución a este problema

204
00:09:55,360 --> 00:09:56,810
en realidad en la próxima conferencia.

205
00:09:58,470 --> 00:10:02,270
Pero ahora, hablemos del operador AND.

206
00:10:02,270 --> 00:10:06,090
Y básicamente cuando se trata de la evaluación de cortocircuitos,

207
00:10:06,090 --> 00:10:09,570
el operador AND funciona exactamente de manera opuesta

208
00:10:09,570 --> 00:10:11,313
del operador OR.

209
00:10:12,940 --> 00:10:14,330
Entonces, veamos.

210
00:10:14,330 --> 00:10:18,950
Cero y Jonas.

211
00:10:18,950 --> 00:10:22,280
Y ahora el resultado de esto es cero.

212
00:10:22,280 --> 00:10:24,120
Y entonces, lo que esto significa es que

213
00:10:24,120 --> 00:10:26,350
los cortocircuitos del operador AND,

214
00:10:26,350 --> 00:10:29,160
cuando el primer valor es false.

215
00:10:29,160 --> 00:10:32,320
Y luego inmediatamente devuelve ese valor falso

216
00:10:32,320 --> 00:10:35,710
sin siquiera evaluar el segundo operando.

217
00:10:39,440 --> 00:10:41,240
Así que de nuevo, eso es exactamente lo contrario

218
00:10:41,240 --> 00:10:44,260
de lo que pasa con el operador OR,

219
00:10:44,260 --> 00:10:47,823
qué cortocircuitos cuando el primer operador es verdadero.

220
00:10:49,500 --> 00:10:52,840
Así que ahora establezcamos un valor verdadero aquí,

221
00:10:52,840 --> 00:10:54,800
o en realidad un valor veraz.

222
00:10:54,800 --> 00:10:59,310
Y luego, en este caso, Jonas es devuelto.

223
00:10:59,310 --> 00:11:03,847
Entonces, cuando es veraz, significa que la evaluación continúa.

224
00:11:03,847 --> 00:11:07,350
y luego simplemente se devuelve el último valor.

225
00:11:07,350 --> 00:11:11,110
Y una vez más, esto tiene sentido si lo pensamos.

226
00:11:11,110 --> 00:11:13,670
Entonces el operador AND solo es verdadero

227
00:11:13,670 --> 00:11:16,020
si todos los operandos son verdaderos.

228
00:11:16,020 --> 00:11:19,090
Y así, si el primero aquí es falso,

229
00:11:19,090 --> 00:11:22,430
entonces significa que el resultado completo de la operación AND

230
00:11:22,430 --> 00:11:24,500
ya será falso de todos modos.

231
00:11:24,500 --> 00:11:26,520
Y entonces no hay necesidad de siquiera mirar

232
00:11:26,520 --> 00:11:28,643
en cualquiera de los otros operandos.

233
00:11:30,040 --> 00:11:32,150
Así que creo que es una buena manera de memorizar

234
00:11:32,150 --> 00:11:34,203
como funcionan ambos.

235
00:11:35,270 --> 00:11:38,040
De todos modos, volvamos a generalizar.

236
00:11:38,040 --> 00:11:40,930
Agregue esto a múltiples operandos aquí

237
00:11:40,930 --> 00:11:42,980
y 23,

238
00:11:42,980 --> 00:11:44,193
y nulo,

239
00:11:45,730 --> 00:11:48,590
y jonas,

240
00:11:48,590 --> 00:11:53,230
y entonces, ¿cuál crees que será el resultado esta vez?

241
00:11:53,230 --> 00:11:55,150
Bien, veamos.

242
00:11:55,150 --> 00:11:57,450
Y de hecho es nulo.

243
00:11:57,450 --> 00:12:01,700
Y para entender por qué apliquemos la misma lógica que antes.

244
00:12:01,700 --> 00:12:03,560
Así que este es un valor veraz,

245
00:12:03,560 --> 00:12:06,130
y por lo tanto la evaluación continúa,

246
00:12:06,130 --> 00:12:08,163
23 también es verdad,

247
00:12:08,163 --> 00:12:10,670
pero entonces nulo es un valor falso

248
00:12:10,670 --> 00:12:14,120
y por lo tanto la evaluación ya no necesita continuar

249
00:12:14,120 --> 00:12:16,360
porque en este punto, todo el resultado

250
00:12:16,360 --> 00:12:19,760
de la operación final va a ser falsa de todos modos.

251
00:12:19,760 --> 00:12:21,390
Y luego, como resultado,

252
00:12:21,390 --> 00:12:24,390
este es simplemente el valor que se devolverá

253
00:12:24,390 --> 00:12:27,810
y es un cortocircuito el resto de la evaluación.

254
00:12:27,810 --> 00:12:30,923
Así que ni siquiera echará un vistazo a Jonas aquí.

255
00:12:33,610 --> 00:12:34,460
Está bien.

256
00:12:34,460 --> 00:12:38,150
Y ahora veamos otro ejemplo práctico.

257
00:12:38,150 --> 00:12:40,250
Entonces, digamos

258
00:12:40,250 --> 00:12:45,250
si el restaurante no pide, pide pizza.

259
00:12:46,930 --> 00:12:49,720
Básicamente, estamos comprobando si este método existe.

260
00:12:50,570 --> 00:12:52,240
y luego si existe,

261
00:12:52,240 --> 00:12:53,863
queremos llamarlo.

262
00:12:54,780 --> 00:12:58,143
Así que el restaurante pide pizza,

263
00:12:59,310 --> 00:13:02,150
digamos con champiñones

264
00:13:03,870 --> 00:13:05,143
y espinacas.

265
00:13:09,730 --> 00:13:12,300
Muchas veces podemos usar el operador AND

266
00:13:12,300 --> 00:13:16,090
para evitar una declaración if como esta,

267
00:13:16,090 --> 00:13:18,330
donde todo lo que queremos hacer es comprobar

268
00:13:18,330 --> 00:13:22,253
si una determinada propiedad o valor realmente existe.

269
00:13:24,660 --> 00:13:26,450
Bien, entonces en este caso aquí,

270
00:13:26,450 --> 00:13:28,940
lo que estamos haciendo es básicamente fingir

271
00:13:28,940 --> 00:13:32,030
que no sabemos si existe pedir pizza.

272
00:13:32,030 --> 00:13:34,630
Y entonces primero verificamos si existe.

273
00:13:34,630 --> 00:13:36,293
y solo entonces lo ejecutamos.

274
00:13:37,620 --> 00:13:41,010
Y entonces esto ahora nos da champiñones y espinacas,

275
00:13:41,010 --> 00:13:42,790
pero con el conocimiento que ganamos

276
00:13:42,790 --> 00:13:44,880
sobre el operador AND,

277
00:13:44,880 --> 00:13:46,623
podemos hacer esto de una manera más simple.

278
00:13:48,220 --> 00:13:52,123
Así que podemos decir restaurante dot order pizza,

279
00:13:56,301 --> 00:14:00,430
y luego, básicamente, si el restaurante pide pizza

280
00:14:00,430 --> 00:14:03,070
no existe, por lo que no está definido,

281
00:14:03,070 --> 00:14:05,580
luego cortocircuitará la evaluación

282
00:14:05,580 --> 00:14:07,650
y no pasará nada más.

283
00:14:07,650 --> 00:14:09,960
Y eso es esencialmente exactamente lo mismo

284
00:14:09,960 --> 00:14:11,913
como esto si bloque aquí está haciendo.

285
00:14:13,120 --> 00:14:15,250
Está bien, pero si existe.

286
00:14:15,250 --> 00:14:17,173
Entonces, si es un valor real,

287
00:14:17,173 --> 00:14:20,120
entonces la segunda parte aquí será evaluada.

288
00:14:20,120 --> 00:14:22,830
Y así aquí en este segundo operando,

289
00:14:22,830 --> 00:14:26,053
entonces podemos llamar a la función.

290
00:14:33,560 --> 00:14:34,400
Bueno.

291
00:14:34,400 --> 00:14:37,280
Y está perfectamente bien usar estos operandos,

292
00:14:37,280 --> 00:14:39,843
el segundo operando` aquí para llamar a una función.

293
00:14:39,843 --> 00:14:41,560
Podemos poner cualquier cosa aquí.

294
00:14:41,560 --> 00:14:44,163
No tiene que ser solo un valor.

295
00:14:46,070 --> 00:14:48,520
Ahora no estoy diciendo que deberías seguir adelante

296
00:14:48,520 --> 00:14:50,890
y reemplace todas sus declaraciones if

297
00:14:50,890 --> 00:14:53,850
con los operadores AND u OR,

298
00:14:53,850 --> 00:14:56,370
así que por favor definitivamente no hagas eso

299
00:14:56,370 --> 00:14:58,880
porque va a hacer que tu código sea muy difícil

300
00:14:58,880 --> 00:15:01,020
para leer en el futuro.

301
00:15:01,020 --> 00:15:03,570
Pero de todos modos, vamos ahora a resumir.

302
00:15:03,570 --> 00:15:07,580
Entonces, el operador OR devolverá el primer valor verdadero

303
00:15:07,580 --> 00:15:09,290
de todos los operandos,

304
00:15:09,290 --> 00:15:13,210
o simplemente el último valor si todos son falsos.

305
00:15:13,210 --> 00:15:17,300
Así que eso es lo que pasó aquí, ¿verdad?

306
00:15:17,300 --> 00:15:18,600
Por otro lado,

307
00:15:18,600 --> 00:15:22,900
el operador AND devolverá el primer valor falso

308
00:15:22,900 --> 00:15:26,470
o el último valor si todos ellos son verídicos.

309
00:15:26,470 --> 00:15:28,590
Y en cuanto a las aplicaciones prácticas,

310
00:15:28,590 --> 00:15:32,310
podemos usar el operador OR para establecer valores predeterminados,

311
00:15:32,310 --> 00:15:34,360
y podemos usar el operador AND

312
00:15:34,360 --> 00:15:37,870
para ejecutar código en el segundo operando

313
00:15:37,870 --> 00:15:40,510
si lo primero es cierto.

314
00:15:40,510 --> 00:15:43,020
Así que juega un poco más con esto tal vez,

315
00:15:43,020 --> 00:15:45,570
y luego pasemos al siguiente video

316
00:15:45,570 --> 00:15:48,860
donde solucionaremos este problema que teniamos aqui

317
00:15:48,860 --> 00:15:51,260
con este operador OR

318
00:15:51,260 --> 00:15:52,653
y este cero.