Upload via hfc (batch)
Browse filesUploaded using hfc tool
This view is limited to 50 files because it contains too many changes. 聽
See raw diff
- .gitattributes +10 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/02-Lecturas recomendadas.txt +1 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/02-Resumen.html +0 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/03-Lecturas recomendadas.txt +1 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/03-M茅todos push y pop para modificar arrays en JavaScript.mp4 +3 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/03-M茅todos push y pop para modificar arrays en JavaScript.vtt +343 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/03-Resumen.html +0 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/03-clase-push-pop_8fa0e05d-0543-4a98-9958-677a086bccb5.js +55 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/04-Lecturas recomendadas.txt +1 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/04-M茅todos map y forEach en JavaScript Uso y Ejemplos Pr谩cticos.mp4 +3 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/04-M茅todos map y forEach en JavaScript Uso y Ejemplos Pr谩cticos.vtt +907 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/04-Resumen.html +0 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/04-clase-map-foreach_d7b1a93f-0f56-4fd3-a419-c28c09dc2a16.js +40 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/05-Lecturas recomendadas.txt +1 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/05-M茅todos Filter y Reduce en JavaScript Uso y Ejemplos Pr谩cticos.mp4 +3 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/05-M茅todos Filter y Reduce en JavaScript Uso y Ejemplos Pr谩cticos.vtt +1198 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/05-Resumen.html +0 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/05-clase-filter-reduce_e813ab75-e07c-4b5d-aad3-8bfc93813d7a.js +45 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/06-Lecturas recomendadas.txt +1 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/06-M茅todos find y findIndex en JavaScript Uso y ejemplos pr谩cticos.mp4 +3 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/06-M茅todos find y findIndex en JavaScript Uso y ejemplos pr谩cticos.vtt +311 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/06-Resumen.html +0 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/06-clase-find-findindex_ec26c6f8-de53-4d67-8a48-801ff513a78b.js +51 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/07-Lecturas recomendadas.txt +1 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/07-Resumen.html +0 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/07-Uso del m茅todo slice para extraer porciones de un array en JavaScript.mp4 +3 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/07-Uso del m茅todo slice para extraer porciones de un array en JavaScript.vtt +362 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/07-clase-slice_534b3124-8beb-4455-8f09-12c56b9174b6.js +10 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/08-Lecturas recomendadas.txt +1 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/08-Resumen.html +0 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/08-Uso del Spread Operator en JavaScript Copia Combinaci贸n y M谩s.mp4 +3 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/08-Uso del Spread Operator en JavaScript Copia Combinaci贸n y M谩s.vtt +462 -0
- subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/08-clase-spread-operator_13d4bad1-6c65-47e2-bd80-89478793784f.js +36 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/01-Lecturas recomendadas.txt +1 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/01-Programaci贸n Orientada a Objetos en JavaScript Conceptos y Pr谩ctica.mp4 +3 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/01-Programaci贸n Orientada a Objetos en JavaScript Conceptos y Pr谩ctica.vtt +529 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/01-Resumen.html +0 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/01-index_2f0c6cdf-1728-43de-b87c-10c86349e8e1.js +79 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/02-Creaci贸n y Manipulaci贸n de Objetos en JavaScript.mp4 +3 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/02-Creaci贸n y Manipulaci贸n de Objetos en JavaScript.vtt +640 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/02-Lecturas recomendadas.txt +1 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/02-Resumen.html +0 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/02-index_1e469f9b-6fdc-4de4-9e66-cba3a484b09b.js +79 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/03-Funci贸n constructora y gesti贸n de instancias en JavaScript.mp4 +3 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/03-Funci贸n constructora y gesti贸n de instancias en JavaScript.vtt +873 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/03-Resumen.html +0 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/04-Clases en JavaScript Creaci贸n y Uso de Objetos con Sintaxis Moderna.mp4 +3 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/04-Clases en JavaScript Creaci贸n y Uso de Objetos con Sintaxis Moderna.vtt +408 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/04-Lecturas recomendadas.txt +1 -0
- subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/04-index_36cbd56e-6114-4e82-92ba-c0c0792e2d31.js +13 -0
.gitattributes
CHANGED
|
@@ -207,3 +207,13 @@ subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript
|
|
| 207 |
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/03-Funciones[[:space:]]y[[:space:]]This/07-Fundamentos[[:space:]]del[[:space:]]Desarrollo[[:space:]]Web[[:space:]]Frontend[[:space:]]y[[:space:]]Backend.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 208 |
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/04-Manipulaci贸n[[:space:]]de[[:space:]]Arrays/01-Arrays[[:space:]]Propiedades[[:space:]]Acceso[[:space:]]y[[:space:]]Creaci贸n[[:space:]]en[[:space:]]Programaci贸n.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 209 |
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/04-Manipulaci贸n[[:space:]]de[[:space:]]Arrays/02-Mutabilidad[[:space:]]e[[:space:]]inmutabilidad[[:space:]]en[[:space:]]arrays[[:space:]]conceptos[[:space:]]y[[:space:]]ejemplos[[:space:]]pr谩cticos.mp4 filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 207 |
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/03-Funciones[[:space:]]y[[:space:]]This/07-Fundamentos[[:space:]]del[[:space:]]Desarrollo[[:space:]]Web[[:space:]]Frontend[[:space:]]y[[:space:]]Backend.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 208 |
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/04-Manipulaci贸n[[:space:]]de[[:space:]]Arrays/01-Arrays[[:space:]]Propiedades[[:space:]]Acceso[[:space:]]y[[:space:]]Creaci贸n[[:space:]]en[[:space:]]Programaci贸n.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 209 |
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/04-Manipulaci贸n[[:space:]]de[[:space:]]Arrays/02-Mutabilidad[[:space:]]e[[:space:]]inmutabilidad[[:space:]]en[[:space:]]arrays[[:space:]]conceptos[[:space:]]y[[:space:]]ejemplos[[:space:]]pr谩cticos.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 210 |
+
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/04-Manipulaci贸n[[:space:]]de[[:space:]]Arrays/03-M茅todos[[:space:]]push[[:space:]]y[[:space:]]pop[[:space:]]para[[:space:]]modificar[[:space:]]arrays[[:space:]]en[[:space:]]JavaScript.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 211 |
+
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/04-Manipulaci贸n[[:space:]]de[[:space:]]Arrays/04-M茅todos[[:space:]]map[[:space:]]y[[:space:]]forEach[[:space:]]en[[:space:]]JavaScript[[:space:]]Uso[[:space:]]y[[:space:]]Ejemplos[[:space:]]Pr谩cticos.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 212 |
+
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/04-Manipulaci贸n[[:space:]]de[[:space:]]Arrays/05-M茅todos[[:space:]]Filter[[:space:]]y[[:space:]]Reduce[[:space:]]en[[:space:]]JavaScript[[:space:]]Uso[[:space:]]y[[:space:]]Ejemplos[[:space:]]Pr谩cticos.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 213 |
+
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/04-Manipulaci贸n[[:space:]]de[[:space:]]Arrays/06-M茅todos[[:space:]]find[[:space:]]y[[:space:]]findIndex[[:space:]]en[[:space:]]JavaScript[[:space:]]Uso[[:space:]]y[[:space:]]ejemplos[[:space:]]pr谩cticos.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 214 |
+
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/04-Manipulaci贸n[[:space:]]de[[:space:]]Arrays/07-Uso[[:space:]]del[[:space:]]m茅todo[[:space:]]slice[[:space:]]para[[:space:]]extraer[[:space:]]porciones[[:space:]]de[[:space:]]un[[:space:]]array[[:space:]]en[[:space:]]JavaScript.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 215 |
+
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/04-Manipulaci贸n[[:space:]]de[[:space:]]Arrays/08-Uso[[:space:]]del[[:space:]]Spread[[:space:]]Operator[[:space:]]en[[:space:]]JavaScript[[:space:]]Copia[[:space:]]Combinaci贸n[[:space:]]y[[:space:]]M谩s.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 216 |
+
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/05-Programaci贸n[[:space:]]Orientada[[:space:]]a[[:space:]]Objetos/01-Programaci贸n[[:space:]]Orientada[[:space:]]a[[:space:]]Objetos[[:space:]]en[[:space:]]JavaScript[[:space:]]Conceptos[[:space:]]y[[:space:]]Pr谩ctica.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 217 |
+
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/05-Programaci贸n[[:space:]]Orientada[[:space:]]a[[:space:]]Objetos/02-Creaci贸n[[:space:]]y[[:space:]]Manipulaci贸n[[:space:]]de[[:space:]]Objetos[[:space:]]en[[:space:]]JavaScript.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 218 |
+
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/05-Programaci贸n[[:space:]]Orientada[[:space:]]a[[:space:]]Objetos/03-Funci贸n[[:space:]]constructora[[:space:]]y[[:space:]]gesti贸n[[:space:]]de[[:space:]]instancias[[:space:]]en[[:space:]]JavaScript.mp4 filter=lfs diff=lfs merge=lfs -text
|
| 219 |
+
subir/Curso[[:space:]]de[[:space:]]Fundamentos[[:space:]]de[[:space:]]JavaScript/05-Programaci贸n[[:space:]]Orientada[[:space:]]a[[:space:]]Objetos/04-Clases[[:space:]]en[[:space:]]JavaScript[[:space:]]Creaci贸n[[:space:]]y[[:space:]]Uso[[:space:]]de[[:space:]]Objetos[[:space:]]con[[:space:]]Sintaxis[[:space:]]Moderna.mp4 filter=lfs diff=lfs merge=lfs -text
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/02-Lecturas recomendadas.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
https://github.com/platzi/basico-js
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/02-Resumen.html
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/03-Lecturas recomendadas.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
https://github.com/platzi/basico-js
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/03-M茅todos push y pop para modificar arrays en JavaScript.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:366fff0b24b01501e3b2bc846a28ba2630e20fad85937fe1324dd6fa10d9cca1
|
| 3 |
+
size 21702850
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/03-M茅todos push y pop para modificar arrays en JavaScript.vtt
ADDED
|
@@ -0,0 +1,343 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
WEBVTT
|
| 2 |
+
|
| 3 |
+
00:00.000 --> 00:02.900
|
| 4 |
+
En esta clase vamos a hablar de dos
|
| 5 |
+
m茅todos
|
| 6 |
+
|
| 7 |
+
00:02.900 --> 00:05.700
|
| 8 |
+
que nos modifican el array original.
|
| 9 |
+
|
| 10 |
+
00:05.700 --> 00:09.000
|
| 11 |
+
Estos m茅todos son tanto push como pop.
|
| 12 |
+
|
| 13 |
+
00:09.000 --> 00:13.000
|
| 14 |
+
Lo que hace push es a帽adir uno o m谩s
|
| 15 |
+
elementos
|
| 16 |
+
|
| 17 |
+
00:13.000 --> 00:14.400
|
| 18 |
+
al final de un
|
| 19 |
+
array,
|
| 20 |
+
|
| 21 |
+
00:14.400 --> 00:17.900
|
| 22 |
+
y adicional nos va a devolver esa longitud
|
| 23 |
+
del array.
|
| 24 |
+
|
| 25 |
+
00:17.900 --> 00:20.100
|
| 26 |
+
Ya lo vamos a ver en juego c贸mo ser铆a.
|
| 27 |
+
|
| 28 |
+
00:20.100 --> 00:23.400
|
| 29 |
+
Sin embargo, en la gr谩fica tendr铆amos un
|
| 30 |
+
array
|
| 31 |
+
|
| 32 |
+
00:23.400 --> 00:26.000
|
| 33 |
+
que tiene, en este caso, cinco posiciones,
|
| 34 |
+
|
| 35 |
+
00:26.000 --> 00:27.300
|
| 36 |
+
es de
|
| 37 |
+
n煤meros,
|
| 38 |
+
|
| 39 |
+
00:27.300 --> 00:31.100
|
| 40 |
+
y lo que podemos hacer es agregarle a ese
|
| 41 |
+
mismo array
|
| 42 |
+
|
| 43 |
+
00:31.100 --> 00:35.300
|
| 44 |
+
otro valor, en este caso le estamos
|
| 45 |
+
agregando el n煤mero 27.
|
| 46 |
+
|
| 47 |
+
00:35.300 --> 00:38.900
|
| 48 |
+
Este array es el mismo, el primero, el
|
| 49 |
+
primero,
|
| 50 |
+
|
| 51 |
+
00:38.900 --> 00:40.800
|
| 52 |
+
no estamos creando uno
|
| 53 |
+
nuevo,
|
| 54 |
+
|
| 55 |
+
00:40.800 --> 00:42.800
|
| 56 |
+
sino que estamos haciendo una modificaci贸n.
|
| 57 |
+
|
| 58 |
+
00:42.800 --> 00:45.200
|
| 59 |
+
Eso es s煤per importante tenerlo en cuenta.
|
| 60 |
+
|
| 61 |
+
00:45.200 --> 00:48.000
|
| 62 |
+
Entonces, veamos c贸mo ser铆a en c贸digo.
|
| 63 |
+
|
| 64 |
+
00:48.000 --> 00:50.800
|
| 65 |
+
Voy a colocar un t铆tulo que nos
|
| 66 |
+
diga
|
| 67 |
+
|
| 68 |
+
00:50.800 --> 00:57.600
|
| 69 |
+
m茅todos que modifican el array original.
|
| 70 |
+
|
| 71 |
+
00:57.600 --> 00:59.600
|
| 72 |
+
Original
|
| 73 |
+
array.
|
| 74 |
+
|
| 75 |
+
00:59.600 --> 01:04.600
|
| 76 |
+
Y vamos a colocar que esto es b谩sicamente
|
| 77 |
+
mutabilidad.
|
| 78 |
+
|
| 79 |
+
01:04.600 --> 01:07.600
|
| 80 |
+
Esto nos est谩 mutando justamente nuestro
|
| 81 |
+
array original.
|
| 82 |
+
|
| 83 |
+
01:07.600 --> 01:09.600
|
| 84 |
+
Entonces,
|
| 85 |
+
mutability.
|
| 86 |
+
|
| 87 |
+
01:09.600 --> 01:10.600
|
| 88 |
+
Listo.
|
| 89 |
+
|
| 90 |
+
01:10.600 --> 01:13.600
|
| 91 |
+
El primero de ellos, por supuesto, es push.
|
| 92 |
+
|
| 93 |
+
01:13.600 --> 01:16.300
|
| 94 |
+
Y lo que vamos a hacer es crear una
|
| 95 |
+
variable
|
| 96 |
+
|
| 97 |
+
01:16.300 --> 01:19.600
|
| 98 |
+
que se llame, por ejemplo, pa铆ses, en ingl茅s,
|
| 99 |
+
countries.
|
| 100 |
+
|
| 101 |
+
01:19.600 --> 01:22.600
|
| 102 |
+
Y lo que hacemos es crear nuestro
|
| 103 |
+
array
|
| 104 |
+
|
| 105 |
+
01:22.600 --> 01:24.600
|
| 106 |
+
con una sintaxis
|
| 107 |
+
normal.
|
| 108 |
+
|
| 109 |
+
01:24.600 --> 01:27.600
|
| 110 |
+
Y lo que hacemos es decirle, por ejemplo, USA.
|
| 111 |
+
|
| 112 |
+
01:27.600 --> 01:31.100
|
| 113 |
+
Vamos a colocarle otro que sea, por ejemplo,
|
| 114 |
+
Canada.
|
| 115 |
+
|
| 116 |
+
01:31.100 --> 01:34.600
|
| 117 |
+
Y vamos a colocar otro que sea
|
| 118 |
+
UK.
|
| 119 |
+
|
| 120 |
+
01:34.600 --> 01:38.600
|
| 121 |
+
Estos countries, que aqu铆 me falt贸 la E,
|
| 122 |
+
|
| 123 |
+
01:38.600 --> 01:40.600
|
| 124 |
+
vamos a agregarle
|
| 125 |
+
otro.
|
| 126 |
+
|
| 127 |
+
01:40.600 --> 01:41.600
|
| 128 |
+
驴C贸mo lo
|
| 129 |
+
hacemos?
|
| 130 |
+
|
| 131 |
+
01:41.600 --> 01:44.600
|
| 132 |
+
Vamos a colocar const new countries.
|
| 133 |
+
|
| 134 |
+
01:44.600 --> 01:46.100
|
| 135 |
+
New
|
| 136 |
+
countries.
|
| 137 |
+
|
| 138 |
+
01:46.100 --> 01:48.600
|
| 139 |
+
Voy a colocarme esta variable
|
| 140 |
+
ac谩.
|
| 141 |
+
|
| 142 |
+
01:48.600 --> 01:50.600
|
| 143 |
+
Voy a cambiarle la
|
| 144 |
+
C.
|
| 145 |
+
|
| 146 |
+
01:50.600 --> 01:54.600
|
| 147 |
+
Y lo que hacemos es decir, countries.push.
|
| 148 |
+
|
| 149 |
+
01:54.600 --> 01:57.600
|
| 150 |
+
En este caso, le estamos diciendo a ese
|
| 151 |
+
que nosotros
|
| 152 |
+
|
| 153 |
+
01:57.600 --> 02:00.600
|
| 154 |
+
acabamos de crear, quiero que, por favor,
|
| 155 |
+
|
| 156 |
+
02:00.600 --> 02:04.600
|
| 157 |
+
le agregues un valor determinado o varios
|
| 158 |
+
valores.
|
| 159 |
+
|
| 160 |
+
02:04.600 --> 02:07.600
|
| 161 |
+
En este caso, voy a colocarle dos pa铆ses
|
| 162 |
+
nuevos.
|
| 163 |
+
|
| 164 |
+
02:07.600 --> 02:11.600
|
| 165 |
+
Vamos a colocarle, por ejemplo, Alemania,
|
| 166 |
+
Germany.
|
| 167 |
+
|
| 168 |
+
02:11.600 --> 02:14.600
|
| 169 |
+
Y vamos a colocarle otro, por ejemplo,
|
| 170 |
+
Australia.
|
| 171 |
+
|
| 172 |
+
02:14.600 --> 02:15.600
|
| 173 |
+
Australia.
|
| 174 |
+
|
| 175 |
+
02:15.600 --> 02:17.600
|
| 176 |
+
Australia.
|
| 177 |
+
|
| 178 |
+
02:17.600 --> 02:18.600
|
| 179 |
+
Listo.
|
| 180 |
+
|
| 181 |
+
02:18.600 --> 02:21.600
|
| 182 |
+
El punto ac谩 importante es revisar, uno,
|
| 183 |
+
|
| 184 |
+
02:21.600 --> 02:25.600
|
| 185 |
+
驴qu茅 nos arrojar铆a o c贸mo se modificar铆a
|
| 186 |
+
nuestro array
|
| 187 |
+
|
| 188 |
+
02:25.600 --> 02:27.600
|
| 189 |
+
original, que ser铆a
|
| 190 |
+
countries?
|
| 191 |
+
|
| 192 |
+
02:27.600 --> 02:32.600
|
| 193 |
+
Y tambi茅n, 驴qu茅 hace esta operaci贸n que
|
| 194 |
+
estamos haciendo?
|
| 195 |
+
|
| 196 |
+
02:32.600 --> 02:35.600
|
| 197 |
+
Entonces, ser铆a console.log de
|
| 198 |
+
qui茅n?
|
| 199 |
+
|
| 200 |
+
02:35.600 --> 02:36.600
|
| 201 |
+
De new
|
| 202 |
+
countries.
|
| 203 |
+
|
| 204 |
+
02:36.600 --> 02:37.600
|
| 205 |
+
Entonces,
|
| 206 |
+
veamos.
|
| 207 |
+
|
| 208 |
+
02:37.600 --> 02:40.600
|
| 209 |
+
Vamos a correr nuestro
|
| 210 |
+
c贸digo.
|
| 211 |
+
|
| 212 |
+
02:40.600 --> 02:42.600
|
| 213 |
+
Este caso ser铆a
|
| 214 |
+
push.
|
| 215 |
+
|
| 216 |
+
02:42.600 --> 02:43.600
|
| 217 |
+
Listo.
|
| 218 |
+
|
| 219 |
+
02:43.600 --> 02:45.600
|
| 220 |
+
Entonces, tenemos nuestro array original,
|
| 221 |
+
|
| 222 |
+
02:45.600 --> 02:48.600
|
| 223 |
+
que ser铆a USA, Canad谩, Canad谩,
|
| 224 |
+
UK.
|
| 225 |
+
|
| 226 |
+
02:48.600 --> 02:52.600
|
| 227 |
+
Y mira que nos estuvo modificando ese
|
| 228 |
+
valor original que le
|
| 229 |
+
|
| 230 |
+
02:52.600 --> 02:54.600
|
| 231 |
+
agregamos al
|
| 232 |
+
principio.
|
| 233 |
+
|
| 234 |
+
02:54.600 --> 02:58.600
|
| 235 |
+
Y seguido de esto, nos dice que new
|
| 236 |
+
countries es un valor.
|
| 237 |
+
|
| 238 |
+
02:58.600 --> 03:01.600
|
| 239 |
+
Es decir, que esta operaci贸n como tal,
|
| 240 |
+
|
| 241 |
+
03:01.600 --> 03:05.600
|
| 242 |
+
aparte de que nos modifica, nos est谩
|
| 243 |
+
devolviendo ese valor.
|
| 244 |
+
|
| 245 |
+
03:05.600 --> 03:08.600
|
| 246 |
+
Y ese valor es la nueva longitud del array.
|
| 247 |
+
|
| 248 |
+
03:08.600 --> 03:12.600
|
| 249 |
+
En este caso, por supuesto, tenemos 1, 2, 3,
|
| 250 |
+
4 y 5.
|
| 251 |
+
|
| 252 |
+
03:12.600 --> 03:15.600
|
| 253 |
+
Propiedades o valores en este array.
|
| 254 |
+
|
| 255 |
+
03:15.600 --> 03:18.600
|
| 256 |
+
Por otro lado, tenemos
|
| 257 |
+
pop.
|
| 258 |
+
|
| 259 |
+
03:18.600 --> 03:21.600
|
| 260 |
+
驴Qu茅 pop nos
|
| 261 |
+
hace?
|
| 262 |
+
|
| 263 |
+
03:21.600 --> 03:25.600
|
| 264 |
+
Primero, nos elimina el 煤ltimo elemento
|
| 265 |
+
del array.
|
| 266 |
+
|
| 267 |
+
03:25.600 --> 03:29.600
|
| 268 |
+
Y adicional, tambi茅n nos devuelve ese valor.
|
| 269 |
+
|
| 270 |
+
03:29.600 --> 03:30.600
|
| 271 |
+
驴C贸mo
|
| 272 |
+
ser铆a?
|
| 273 |
+
|
| 274 |
+
03:30.600 --> 03:33.600
|
| 275 |
+
Entonces, vamos a colocar por ac谩 pop,
|
| 276 |
+
|
| 277 |
+
03:33.600 --> 03:34.600
|
| 278 |
+
que ser铆a el otro
|
| 279 |
+
m茅todo.
|
| 280 |
+
|
| 281 |
+
03:34.600 --> 03:38.600
|
| 282 |
+
Y vamos a colocarle una variable que se
|
| 283 |
+
llama removed.
|
| 284 |
+
|
| 285 |
+
03:38.600 --> 03:42.600
|
| 286 |
+
Removed
|
| 287 |
+
country.
|
| 288 |
+
|
| 289 |
+
03:42.600 --> 03:45.600
|
| 290 |
+
Y aqu铆, lo que vamos a hacer es tomar
|
| 291 |
+
nuestro countries,
|
| 292 |
+
|
| 293 |
+
03:45.600 --> 03:49.600
|
| 294 |
+
el original, el array que creamos al
|
| 295 |
+
principio,
|
| 296 |
+
|
| 297 |
+
03:49.600 --> 03:52.600
|
| 298 |
+
y le vamos a decir
|
| 299 |
+
pop.
|
| 300 |
+
|
| 301 |
+
03:52.600 --> 03:55.600
|
| 302 |
+
Luego de este pop, vamos a hacer de nuevo
|
| 303 |
+
lo mismo.
|
| 304 |
+
|
| 305 |
+
03:55.600 --> 03:57.600
|
| 306 |
+
Vamos a colocar dos
|
| 307 |
+
console.log.
|
| 308 |
+
|
| 309 |
+
03:57.600 --> 04:01.600
|
| 310 |
+
El primero para revisar esta variable que
|
| 311 |
+
creamos.
|
| 312 |
+
|
| 313 |
+
04:01.600 --> 04:06.600
|
| 314 |
+
Y el otro para colocar tambi茅n el array
|
| 315 |
+
que nosotros creamos.
|
| 316 |
+
|
| 317 |
+
04:06.600 --> 04:08.600
|
| 318 |
+
Vamos a ver si se modific贸, qu茅 pas贸 con 茅l.
|
| 319 |
+
|
| 320 |
+
04:08.600 --> 04:11.600
|
| 321 |
+
Entonces, vamos a correr el
|
| 322 |
+
c贸digo.
|
| 323 |
+
|
| 324 |
+
04:11.600 --> 04:15.600
|
| 325 |
+
Y aqu铆 vemos, efectivamente, que countries
|
| 326 |
+
fue modificado de nuevo.
|
| 327 |
+
|
| 328 |
+
04:15.600 --> 04:18.600
|
| 329 |
+
Le quit贸 el 煤ltimo
|
| 330 |
+
elemento.
|
| 331 |
+
|
| 332 |
+
04:18.600 --> 04:25.600
|
| 333 |
+
Y adicional, nos devuelve ese elemento que
|
| 334 |
+
fue removido.
|
| 335 |
+
|
| 336 |
+
04:25.600 --> 04:30.600
|
| 337 |
+
Aqu铆 voy a colocarle
|
| 338 |
+
country.
|
| 339 |
+
|
| 340 |
+
04:30.600 --> 04:36.600
|
| 341 |
+
Y ya nos quedar铆a muy bien
|
| 342 |
+
escrito.
|
| 343 |
+
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/03-Resumen.html
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/03-clase-push-pop_8fa0e05d-0543-4a98-9958-677a086bccb5.js
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
// Methods that modify the original array (Mutability).
|
| 2 |
+
|
| 3 |
+
// push()
|
| 4 |
+
|
| 5 |
+
const countries = ['USA', 'Canada', 'UK']
|
| 6 |
+
const newCountries = countries.push('Germany', 'Australia')
|
| 7 |
+
|
| 8 |
+
console.log(countries)
|
| 9 |
+
console.log(newCountries)
|
| 10 |
+
|
| 11 |
+
// pop()
|
| 12 |
+
|
| 13 |
+
const removedCountry = countries.pop()
|
| 14 |
+
|
| 15 |
+
console.log(countries)
|
| 16 |
+
console.log(removedCountry)
|
| 17 |
+
|
| 18 |
+
// Exercise: Managing a Stack
|
| 19 |
+
|
| 20 |
+
let bookCart = []
|
| 21 |
+
|
| 22 |
+
const ADD_TO_CART_ACTION = 'addToCart'
|
| 23 |
+
const REMOVE_FROM_CART_ACTION = 'removeFromCart'
|
| 24 |
+
const VIEW_CART_ACTION = 'viewCart'
|
| 25 |
+
|
| 26 |
+
function viewCart () {
|
| 27 |
+
console.log('Current Cart of Books: ', bookCart)
|
| 28 |
+
}
|
| 29 |
+
|
| 30 |
+
function performCartActions (action, newBook) {
|
| 31 |
+
switch (action) {
|
| 32 |
+
case ADD_TO_CART_ACTION:
|
| 33 |
+
bookCart.push(newBook)
|
| 34 |
+
break;
|
| 35 |
+
case REMOVE_FROM_CART_ACTION:
|
| 36 |
+
if (bookCart.length === 0) {
|
| 37 |
+
console.log('Cart is empty. No books to remove.')
|
| 38 |
+
} else {
|
| 39 |
+
const removedBook = bookCart.pop()
|
| 40 |
+
console.log(`Removed book from the cart: ${removedBook}`)
|
| 41 |
+
}
|
| 42 |
+
break;
|
| 43 |
+
case VIEW_CART_ACTION:
|
| 44 |
+
viewCart()
|
| 45 |
+
break;
|
| 46 |
+
default:
|
| 47 |
+
console.log('Invalid action. Please choose a vaid option.')
|
| 48 |
+
}
|
| 49 |
+
}
|
| 50 |
+
|
| 51 |
+
performCartActions(ADD_TO_CART_ACTION, 'Think like a monk')
|
| 52 |
+
performCartActions(VIEW_CART_ACTION)
|
| 53 |
+
performCartActions(ADD_TO_CART_ACTION, 'Ego is the enemy.')
|
| 54 |
+
performCartActions(VIEW_CART_ACTION)
|
| 55 |
+
performCartActions(REMOVE_FROM_CART_ACTION)
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/04-Lecturas recomendadas.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
https://github.com/platzi/basico-js
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/04-M茅todos map y forEach en JavaScript Uso y Ejemplos Pr谩cticos.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:c3304ffb53c84efc083f4b6d3dd54fed261c7899d7ed64ca436ced2f32fcd2a6
|
| 3 |
+
size 68869445
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/04-M茅todos map y forEach en JavaScript Uso y Ejemplos Pr谩cticos.vtt
ADDED
|
@@ -0,0 +1,907 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
WEBVTT
|
| 2 |
+
|
| 3 |
+
00:00.000 --> 00:03.600
|
| 4 |
+
En esta clase vamos a ver dos m茅todos de
|
| 5 |
+
arrays
|
| 6 |
+
|
| 7 |
+
00:03.600 --> 00:06.480
|
| 8 |
+
que no modifican el array
|
| 9 |
+
original,
|
| 10 |
+
|
| 11 |
+
00:06.480 --> 00:09.380
|
| 12 |
+
pero que s铆 iteran sobre esos arrays.
|
| 13 |
+
|
| 14 |
+
00:09.380 --> 00:12.540
|
| 15 |
+
Entonces, vamos a revisar el primero,
|
| 16 |
+
que es map.
|
| 17 |
+
|
| 18 |
+
00:12.540 --> 00:16.240
|
| 19 |
+
Resulta que map es uno de los m茅todos m谩s
|
| 20 |
+
utilizados
|
| 21 |
+
|
| 22 |
+
00:16.240 --> 00:20.200
|
| 23 |
+
en arrays, y justamente nos permite
|
| 24 |
+
aplicar una funci贸n
|
| 25 |
+
|
| 26 |
+
00:20.200 --> 00:22.340
|
| 27 |
+
a cada uno de los elementos del array,
|
| 28 |
+
|
| 29 |
+
00:22.340 --> 00:25.240
|
| 30 |
+
y tambi茅n nos permite construir un nuevo
|
| 31 |
+
array
|
| 32 |
+
|
| 33 |
+
00:25.240 --> 00:27.180
|
| 34 |
+
con el
|
| 35 |
+
resultado.
|
| 36 |
+
|
| 37 |
+
00:27.180 --> 00:28.540
|
| 38 |
+
驴C贸mo se ver铆a
|
| 39 |
+
eso?
|
| 40 |
+
|
| 41 |
+
00:28.540 --> 00:31.860
|
| 42 |
+
Tendr铆amos, por ejemplo, un array a este lado,
|
| 43 |
+
|
| 44 |
+
00:31.860 --> 00:33.280
|
| 45 |
+
que tiene cinco
|
| 46 |
+
posiciones.
|
| 47 |
+
|
| 48 |
+
00:33.280 --> 00:37.600
|
| 49 |
+
En este caso, los n煤meros son 2, 4, 8,
|
| 50 |
+
10 y 12.
|
| 51 |
+
|
| 52 |
+
00:37.600 --> 00:41.200
|
| 53 |
+
Pero si le aplicamos una funci贸n a cada uno,
|
| 54 |
+
|
| 55 |
+
00:41.200 --> 00:44.880
|
| 56 |
+
esta funci贸n en este caso puede ser que se
|
| 57 |
+
multiplique por 2.
|
| 58 |
+
|
| 59 |
+
00:44.880 --> 00:48.160
|
| 60 |
+
Aqu铆 estamos viendo que el resultado ser铆a
|
| 61 |
+
un nuevo
|
| 62 |
+
|
| 63 |
+
00:48.160 --> 00:52.440
|
| 64 |
+
array, y ese array tendr铆a que el
|
| 65 |
+
resultado de haber hecho
|
| 66 |
+
|
| 67 |
+
00:52.440 --> 00:55.600
|
| 68 |
+
justamente esta funci贸n por cada uno de
|
| 69 |
+
esos elementos.
|
| 70 |
+
|
| 71 |
+
00:55.600 --> 00:59.640
|
| 72 |
+
Entonces, si decimos 2 por 2, 4, y el
|
| 73 |
+
resultado se ver铆a
|
| 74 |
+
|
| 75 |
+
00:59.640 --> 01:00.960
|
| 76 |
+
inmediatamente
|
| 77 |
+
ac谩.
|
| 78 |
+
|
| 79 |
+
01:00.960 --> 01:03.800
|
| 80 |
+
Vamos a realizar eso en el c贸digo para que
|
| 81 |
+
veamos mucho
|
| 82 |
+
|
| 83 |
+
01:03.800 --> 01:06.280
|
| 84 |
+
mejor c贸mo es que esto
|
| 85 |
+
funciona.
|
| 86 |
+
|
| 87 |
+
01:06.280 --> 01:09.960
|
| 88 |
+
Tendr铆amos, por ejemplo, ac谩 nuestro
|
| 89 |
+
m茅todo map,
|
| 90 |
+
|
| 91 |
+
01:09.960 --> 01:11.960
|
| 92 |
+
y vamos a crear una
|
| 93 |
+
constante.
|
| 94 |
+
|
| 95 |
+
01:11.960 --> 01:14.720
|
| 96 |
+
En este caso, vamos a decir que es numbers,
|
| 97 |
+
|
| 98 |
+
01:14.720 --> 01:17.500
|
| 99 |
+
y vamos a colocarle unos
|
| 100 |
+
n煤meros.
|
| 101 |
+
|
| 102 |
+
01:17.500 --> 01:23.000
|
| 103 |
+
En este caso, le voy a poner del 1 al 5, 2, 3,
|
| 104 |
+
4 y 5.
|
| 105 |
+
|
| 106 |
+
01:23.000 --> 01:28.360
|
| 107 |
+
Y seguido, lo que vamos a hacer es colocar
|
| 108 |
+
una variable para
|
| 109 |
+
|
| 110 |
+
01:28.360 --> 01:32.120
|
| 111 |
+
poder tomar ese nuevo array que nos va a
|
| 112 |
+
entregar punto map.
|
| 113 |
+
|
| 114 |
+
01:32.120 --> 01:33.740
|
| 115 |
+
Entonces, 驴qu茅 es lo que vamos a
|
| 116 |
+
hacer?
|
| 117 |
+
|
| 118 |
+
01:33.740 --> 01:38.240
|
| 119 |
+
Vamos a decir que vamos a elevar los
|
| 120 |
+
n煤meros al mismo
|
| 121 |
+
|
| 122 |
+
01:38.240 --> 01:39.680
|
| 123 |
+
n煤mero, es decir, al
|
| 124 |
+
cuadrado.
|
| 125 |
+
|
| 126 |
+
01:39.680 --> 01:45.520
|
| 127 |
+
Entonces, vamos a decir squared, squared
|
| 128 |
+
numbers,
|
| 129 |
+
|
| 130 |
+
01:45.520 --> 01:51.440
|
| 131 |
+
y vamos a decir numbers, que numbers punto
|
| 132 |
+
map.
|
| 133 |
+
|
| 134 |
+
01:51.440 --> 01:53.560
|
| 135 |
+
Aqu铆 es donde viene la
|
| 136 |
+
funci贸n.
|
| 137 |
+
|
| 138 |
+
01:53.560 --> 01:54.800
|
| 139 |
+
Vamos a
|
| 140 |
+
aplic谩rsela.
|
| 141 |
+
|
| 142 |
+
01:54.800 --> 01:57.240
|
| 143 |
+
Entonces, ser铆a en este caso,
|
| 144 |
+
num.
|
| 145 |
+
|
| 146 |
+
01:57.240 --> 02:01.960
|
| 147 |
+
Vamos a decir que num es cada una de estas
|
| 148 |
+
posiciones.
|
| 149 |
+
|
| 150 |
+
02:01.960 --> 02:04.440
|
| 151 |
+
Y seguido, vamos a colocar un arrow function,
|
| 152 |
+
|
| 153 |
+
02:04.440 --> 02:07.960
|
| 154 |
+
que en este caso nos va a devolver algo
|
| 155 |
+
que nosotros
|
| 156 |
+
|
| 157 |
+
02:07.960 --> 02:11.960
|
| 158 |
+
queremos en este caso, que es justamente
|
| 159 |
+
la multiplicaci贸n de
|
| 160 |
+
|
| 161 |
+
02:11.960 --> 02:13.560
|
| 162 |
+
este n煤mero por el
|
| 163 |
+
mismo.
|
| 164 |
+
|
| 165 |
+
02:13.560 --> 02:17.880
|
| 166 |
+
Entonces, tenemos ac谩, recibimos cada uno
|
| 167 |
+
de los valores y
|
| 168 |
+
|
| 169 |
+
02:17.880 --> 02:21.960
|
| 170 |
+
vamos a retornar ese mismo valor
|
| 171 |
+
multiplicado por el mismo.
|
| 172 |
+
|
| 173 |
+
02:21.960 --> 02:26.120
|
| 174 |
+
Vamos a revisar c贸mo ser铆a eso, console.
|
| 175 |
+
log, 驴de qui茅n?
|
| 176 |
+
|
| 177 |
+
02:26.120 --> 02:32.160
|
| 178 |
+
De numbers y de estos n煤meros tambi茅n
|
| 179 |
+
elevados al cuadrado.
|
| 180 |
+
|
| 181 |
+
02:32.160 --> 02:37.360
|
| 182 |
+
Voy a colocar en node, clase, justamente, map.
|
| 183 |
+
|
| 184 |
+
02:37.360 --> 02:39.800
|
| 185 |
+
Voy a correr este
|
| 186 |
+
c贸digo.
|
| 187 |
+
|
| 188 |
+
02:39.800 --> 02:43.160
|
| 189 |
+
Y aqu铆 ya estamos viendo que tenemos
|
| 190 |
+
nuestro array original
|
| 191 |
+
|
| 192 |
+
02:43.160 --> 02:45.600
|
| 193 |
+
sin ning煤n tipo de
|
| 194 |
+
modificaci贸n.
|
| 195 |
+
|
| 196 |
+
02:45.600 --> 02:50.360
|
| 197 |
+
Y adicional, tenemos un array nuevo en
|
| 198 |
+
donde estamos haciendo
|
| 199 |
+
|
| 200 |
+
02:50.360 --> 02:54.200
|
| 201 |
+
la multiplicaci贸n del mismo n煤mero de cada
|
| 202 |
+
uno de ellos por
|
| 203 |
+
|
| 204 |
+
02:54.200 --> 02:54.800
|
| 205 |
+
el
|
| 206 |
+
mismo.
|
| 207 |
+
|
| 208 |
+
02:54.800 --> 02:57.680
|
| 209 |
+
Entonces, aqu铆 estamos viendo el resultado
|
| 210 |
+
de hechos.
|
| 211 |
+
|
| 212 |
+
02:57.680 --> 03:02.640
|
| 213 |
+
Seguido, tenemos otro m茅todo, que es el
|
| 214 |
+
m茅todo forEach.
|
| 215 |
+
|
| 216 |
+
03:02.640 --> 03:07.120
|
| 217 |
+
Este m茅todo forEach lo que hace es iterar
|
| 218 |
+
sobre cada uno de los
|
| 219 |
+
|
| 220 |
+
03:07.120 --> 03:10.760
|
| 221 |
+
elementos, al igual que punto map, pero en
|
| 222 |
+
este caso,
|
| 223 |
+
|
| 224 |
+
03:10.760 --> 03:14.280
|
| 225 |
+
aparte de que tambi茅n ejecuta una funci贸n
|
| 226 |
+
proporcionada para
|
| 227 |
+
|
| 228 |
+
03:14.280 --> 03:18.720
|
| 229 |
+
cada uno de estos elementos, no nos crea
|
| 230 |
+
un nuevo array.
|
| 231 |
+
|
| 232 |
+
03:18.720 --> 03:21.280
|
| 233 |
+
Nos va a devolver como el mismo n煤mero.
|
| 234 |
+
|
| 235 |
+
03:21.280 --> 03:22.920
|
| 236 |
+
Entonces, 驴qu茅 es lo que vamos a
|
| 237 |
+
hacer?
|
| 238 |
+
|
| 239 |
+
03:22.920 --> 03:26.080
|
| 240 |
+
Dos, revisamos el array, la posici贸n,
|
| 241 |
+
|
| 242 |
+
03:26.080 --> 03:30.000
|
| 243 |
+
efectuamos una funci贸n y 茅l nos va a
|
| 244 |
+
devolver algo,
|
| 245 |
+
|
| 246 |
+
03:30.000 --> 03:33.000
|
| 247 |
+
pero ese algo no va a ser en forma de array.
|
| 248 |
+
|
| 249 |
+
03:33.000 --> 03:35.680
|
| 250 |
+
Revisemos c贸mo ser铆a esto en c贸digo.
|
| 251 |
+
|
| 252 |
+
03:35.680 --> 03:40.920
|
| 253 |
+
Vamos a colocar forEach y por aqu铆 vamos a
|
| 254 |
+
tener unas nuevas
|
| 255 |
+
|
| 256 |
+
03:40.920 --> 03:41.840
|
| 257 |
+
variables.
|
| 258 |
+
|
| 259 |
+
03:41.840 --> 03:47.320
|
| 260 |
+
Vamos a tener const, colors y aqu铆 vamos a
|
| 261 |
+
colocar,
|
| 262 |
+
|
| 263 |
+
03:47.320 --> 03:49.200
|
| 264 |
+
por ejemplo, algunos
|
| 265 |
+
colores.
|
| 266 |
+
|
| 267 |
+
03:49.200 --> 03:56.240
|
| 268 |
+
Voy a colocar red, pink y blue, por decir
|
| 269 |
+
algo.
|
| 270 |
+
|
| 271 |
+
03:56.240 --> 03:59.560
|
| 272 |
+
A estos colores, lo que le vamos a hacer
|
| 273 |
+
es iterarlos y voy
|
| 274 |
+
|
| 275 |
+
03:59.560 --> 04:02.200
|
| 276 |
+
a retornar el valor de cada
|
| 277 |
+
uno.
|
| 278 |
+
|
| 279 |
+
04:02.200 --> 04:03.560
|
| 280 |
+
Eso es lo 煤nico que quiero
|
| 281 |
+
hacer.
|
| 282 |
+
|
| 283 |
+
04:03.560 --> 04:09.440
|
| 284 |
+
Entonces, voy a colocar const iterated colors.
|
| 285 |
+
|
| 286 |
+
04:09.440 --> 04:11.640
|
| 287 |
+
Vamos a iterar esos
|
| 288 |
+
colores.
|
| 289 |
+
|
| 290 |
+
04:11.640 --> 04:14.920
|
| 291 |
+
Y lo que hacemos es tomar nuestro array,
|
| 292 |
+
decirle, mira,
|
| 293 |
+
|
| 294 |
+
04:14.920 --> 04:18.680
|
| 295 |
+
yo quiero que recorras cada una de las
|
| 296 |
+
posiciones,
|
| 297 |
+
|
| 298 |
+
04:18.680 --> 04:22.480
|
| 299 |
+
voy a tener cada uno de los valores y a su
|
| 300 |
+
vez,
|
| 301 |
+
|
| 302 |
+
04:22.480 --> 04:27.600
|
| 303 |
+
quiero que por favor me digas cu谩l es el
|
| 304 |
+
valor de cada una de
|
| 305 |
+
|
| 306 |
+
04:27.600 --> 04:28.640
|
| 307 |
+
esas
|
| 308 |
+
posiciones.
|
| 309 |
+
|
| 310 |
+
04:28.640 --> 04:31.480
|
| 311 |
+
Entonces, tenemos ac谩
|
| 312 |
+
color.
|
| 313 |
+
|
| 314 |
+
04:31.480 --> 04:35.400
|
| 315 |
+
Y vamos a colocar nuevamente nuestro console.
|
| 316 |
+
log,
|
| 317 |
+
|
| 318 |
+
04:35.400 --> 04:40.980
|
| 319 |
+
tanto con colors como con este iterated
|
| 320 |
+
colors.
|
| 321 |
+
|
| 322 |
+
04:40.980 --> 04:43.980
|
| 323 |
+
Vamos a correr nuevamente nuestro programa
|
| 324 |
+
y nos dice que
|
| 325 |
+
|
| 326 |
+
04:43.980 --> 04:48.640
|
| 327 |
+
tenemos colors, que es nuestro array
|
| 328 |
+
original y aqu铆 nos va
|
| 329 |
+
|
| 330 |
+
04:48.640 --> 04:52.080
|
| 331 |
+
a salir que iterated colors es indefinido.
|
| 332 |
+
|
| 333 |
+
04:52.080 --> 04:56.680
|
| 334 |
+
Pero algo interesante es lo que sucedi贸
|
| 335 |
+
previo a esto.
|
| 336 |
+
|
| 337 |
+
04:56.680 --> 04:59.360
|
| 338 |
+
Resulta que 茅l s铆 hizo lo que nosotros
|
| 339 |
+
quer铆amos,
|
| 340 |
+
|
| 341 |
+
04:59.360 --> 05:02.820
|
| 342 |
+
que era precisamente que recorriera todo
|
| 343 |
+
el array y que
|
| 344 |
+
|
| 345 |
+
05:02.820 --> 05:06.440
|
| 346 |
+
cada vez que lo recorriera nos devolviera
|
| 347 |
+
el valor de cada uno
|
| 348 |
+
|
| 349 |
+
05:06.440 --> 05:07.400
|
| 350 |
+
de los
|
| 351 |
+
elementos.
|
| 352 |
+
|
| 353 |
+
05:07.400 --> 05:10.600
|
| 354 |
+
Entonces, aqu铆 tenemos red, pink y blue.
|
| 355 |
+
|
| 356 |
+
05:10.600 --> 05:15.520
|
| 357 |
+
S铆 hizo lo que quer铆amos, pero ya
|
| 358 |
+
recordemos ac谩 que 茅l no nos
|
| 359 |
+
|
| 360 |
+
05:15.520 --> 05:18.560
|
| 361 |
+
devuelve un array as铆 como map, sino que
|
| 362 |
+
en este caso dice
|
| 363 |
+
|
| 364 |
+
05:18.560 --> 05:21.640
|
| 365 |
+
como, no, pues, no te voy a devolver nada,
|
| 366 |
+
es decir,
|
| 367 |
+
|
| 368 |
+
05:21.640 --> 05:25.600
|
| 369 |
+
te voy a devolver indefinido, pero s铆 voy
|
| 370 |
+
a hacer algo y ese
|
| 371 |
+
|
| 372 |
+
05:25.600 --> 05:30.480
|
| 373 |
+
algo es arrojarte cada uno de los valores
|
| 374 |
+
de nuestro array.
|
| 375 |
+
|
| 376 |
+
05:30.480 --> 05:33.680
|
| 377 |
+
Veamos ahora un ejemplo
|
| 378 |
+
aplicado.
|
| 379 |
+
|
| 380 |
+
05:33.680 --> 05:37.760
|
| 381 |
+
Vamos a revisar este documento y tenemos
|
| 382 |
+
la conversi贸n de
|
| 383 |
+
|
| 384 |
+
05:37.760 --> 05:41.480
|
| 385 |
+
temperaturas de Fahrenheit a Celsius.
|
| 386 |
+
|
| 387 |
+
05:41.480 --> 05:42.400
|
| 388 |
+
驴C贸mo ser铆a
|
| 389 |
+
eso?
|
| 390 |
+
|
| 391 |
+
05:42.400 --> 05:45.760
|
| 392 |
+
Vamos a crear un programa que tome las
|
| 393 |
+
temperaturas que est谩n
|
| 394 |
+
|
| 395 |
+
05:45.760 --> 05:49.320
|
| 396 |
+
en Fahrenheit como un input, es decir,
|
| 397 |
+
como entrada,
|
| 398 |
+
|
| 399 |
+
05:49.320 --> 05:52.800
|
| 400 |
+
y lo que vamos a hacer es convertirlas a
|
| 401 |
+
Celsius.
|
| 402 |
+
|
| 403 |
+
05:52.800 --> 05:55.400
|
| 404 |
+
En este caso nos dicen que debemos
|
| 405 |
+
utilizar la siguiente
|
| 406 |
+
|
| 407 |
+
05:55.400 --> 05:56.560
|
| 408 |
+
f贸rmula.
|
| 409 |
+
|
| 410 |
+
05:56.560 --> 05:59.560
|
| 411 |
+
Cu茅ntame en los comentarios, por favor,
|
| 412 |
+
|
| 413 |
+
05:59.560 --> 06:01.800
|
| 414 |
+
驴qu茅 utilizar铆as en este
|
| 415 |
+
ejercicio?
|
| 416 |
+
|
| 417 |
+
06:01.800 --> 06:04.080
|
| 418 |
+
Map o
|
| 419 |
+
foreach.
|
| 420 |
+
|
| 421 |
+
06:04.080 --> 06:07.760
|
| 422 |
+
Vamos a revisar qu茅 deber铆amos utilizar en
|
| 423 |
+
este caso.
|
| 424 |
+
|
| 425 |
+
06:07.760 --> 06:11.680
|
| 426 |
+
Entonces vamos a colocar por ac谩, exercise.
|
| 427 |
+
|
| 428 |
+
06:11.680 --> 06:15.120
|
| 429 |
+
Y en este caso le vamos a colocar Fahrenheit.
|
| 430 |
+
|
| 431 |
+
06:15.120 --> 06:18.640
|
| 432 |
+
Fahrenheit.
|
| 433 |
+
|
| 434 |
+
06:18.640 --> 06:20.760
|
| 435 |
+
Vamos a ver si lo escribo
|
| 436 |
+
bien.
|
| 437 |
+
|
| 438 |
+
06:20.760 --> 06:22.800
|
| 439 |
+
2
|
| 440 |
+
Celsius.
|
| 441 |
+
|
| 442 |
+
06:22.800 --> 06:23.320
|
| 443 |
+
Listo.
|
| 444 |
+
|
| 445 |
+
06:23.320 --> 06:24.120
|
| 446 |
+
Conversion.
|
| 447 |
+
|
| 448 |
+
06:24.120 --> 06:26.120
|
| 449 |
+
Conversion.
|
| 450 |
+
|
| 451 |
+
06:26.120 --> 06:26.620
|
| 452 |
+
Muy
|
| 453 |
+
bien.
|
| 454 |
+
|
| 455 |
+
06:26.620 --> 06:30.800
|
| 456 |
+
Vamos a tener una constante que nos va a
|
| 457 |
+
dar justamente las
|
| 458 |
+
|
| 459 |
+
06:30.800 --> 06:32.560
|
| 460 |
+
temperaturas en
|
| 461 |
+
Fahrenheit.
|
| 462 |
+
|
| 463 |
+
06:32.560 --> 06:36.200
|
| 464 |
+
Entonces voy a copiarme esto que acab茅 de
|
| 465 |
+
escribir y voy
|
| 466 |
+
|
| 467 |
+
06:36.200 --> 06:40.120
|
| 468 |
+
a colocarle al principio temperaturas.
|
| 469 |
+
|
| 470 |
+
06:40.120 --> 06:43.000
|
| 471 |
+
Temperaturas.
|
| 472 |
+
|
| 473 |
+
06:43.000 --> 06:44.440
|
| 474 |
+
Listo.
|
| 475 |
+
|
| 476 |
+
06:44.440 --> 06:45.640
|
| 477 |
+
En
|
| 478 |
+
Fahrenheit.
|
| 479 |
+
|
| 480 |
+
06:45.640 --> 06:48.120
|
| 481 |
+
Entonces ya tenemos nuestra variable.
|
| 482 |
+
|
| 483 |
+
06:48.120 --> 06:51.360
|
| 484 |
+
Esa variable va a ser un array y este
|
| 485 |
+
array va a tener
|
| 486 |
+
|
| 487 |
+
06:51.360 --> 06:53.760
|
| 488 |
+
justamente las temperaturas, que va a ser,
|
| 489 |
+
por ejemplo,
|
| 490 |
+
|
| 491 |
+
06:53.760 --> 07:00.440
|
| 492 |
+
32, 68, 95, eso puede ser cualquier valor
|
| 493 |
+
que queramos,
|
| 494 |
+
|
| 495 |
+
07:00.440 --> 07:04.040
|
| 496 |
+
y 212, por
|
| 497 |
+
ejemplo.
|
| 498 |
+
|
| 499 |
+
07:04.040 --> 07:07.560
|
| 500 |
+
Seguido de esto, lo que debemos hacer es
|
| 501 |
+
la conversi贸n de
|
| 502 |
+
|
| 503 |
+
07:07.560 --> 07:10.480
|
| 504 |
+
esas temperaturas que est谩n en Fahrenheit
|
| 505 |
+
a Celsius.
|
| 506 |
+
|
| 507 |
+
07:10.480 --> 07:14.000
|
| 508 |
+
Entonces vamos a crearnos otra constante,
|
| 509 |
+
const,
|
| 510 |
+
|
| 511 |
+
07:14.000 --> 07:17.840
|
| 512 |
+
temperaturas, voy a ahorrarme el hecho de
|
| 513 |
+
volver a colocar
|
| 514 |
+
|
| 515 |
+
07:17.840 --> 07:21.120
|
| 516 |
+
temperaturas, y ahora voy a colocar Celsius,
|
| 517 |
+
|
| 518 |
+
07:21.120 --> 07:23.320
|
| 519 |
+
que ya tambi茅n lo escrib铆 por
|
| 520 |
+
aqu铆.
|
| 521 |
+
|
| 522 |
+
07:23.320 --> 07:26.040
|
| 523 |
+
Ahora, 驴qu茅 ser铆a
|
| 524 |
+
esto?
|
| 525 |
+
|
| 526 |
+
07:26.040 --> 07:28.320
|
| 527 |
+
Por supuesto, nos tocar铆a tomar nuestro array,
|
| 528 |
+
|
| 529 |
+
07:28.320 --> 07:31.160
|
| 530 |
+
que es el de las temperaturas en Fahrenheit,
|
| 531 |
+
|
| 532 |
+
07:31.160 --> 07:36.240
|
| 533 |
+
seguido de el m茅todo, que en este caso
|
| 534 |
+
ser铆a map,
|
| 535 |
+
|
| 536 |
+
07:36.240 --> 07:41.480
|
| 537 |
+
precisamente porque queremos recibir
|
| 538 |
+
justamente un array con
|
| 539 |
+
|
| 540 |
+
07:41.480 --> 07:44.960
|
| 541 |
+
las temperaturas, pero en este caso,
|
| 542 |
+
convertidas a Celsius.
|
| 543 |
+
|
| 544 |
+
07:44.960 --> 07:46.840
|
| 545 |
+
Por eso que necesitamos un punto m谩s,
|
| 546 |
+
|
| 547 |
+
07:46.840 --> 07:51.080
|
| 548 |
+
porque necesitamos recibir un array que
|
| 549 |
+
sea las temperaturas
|
| 550 |
+
|
| 551 |
+
07:51.080 --> 07:52.480
|
| 552 |
+
convertidas.
|
| 553 |
+
|
| 554 |
+
07:52.480 --> 07:54.440
|
| 555 |
+
Entonces, 驴qu茅 es lo que vamos a
|
| 556 |
+
colocar?
|
| 557 |
+
|
| 558 |
+
07:54.440 --> 07:57.320
|
| 559 |
+
Vamos a escribir Fahrenheit, voy a tomarme
|
| 560 |
+
eso,
|
| 561 |
+
|
| 562 |
+
07:57.320 --> 08:01.640
|
| 563 |
+
que ser铆a como la temperatura o cada valor
|
| 564 |
+
en particular,
|
| 565 |
+
|
| 566 |
+
08:01.640 --> 08:05.760
|
| 567 |
+
y lo que hacemos es aplicar la f贸rmula que
|
| 568 |
+
nos dieron ac谩,
|
| 569 |
+
|
| 570 |
+
08:05.760 --> 08:07.640
|
| 571 |
+
por cada uno de los
|
| 572 |
+
elementos.
|
| 573 |
+
|
| 574 |
+
08:07.640 --> 08:08.960
|
| 575 |
+
驴C贸mo ser铆a esa
|
| 576 |
+
f贸rmula?
|
| 577 |
+
|
| 578 |
+
08:08.960 --> 08:11.800
|
| 579 |
+
Entonces vamos a colocar, entre par茅ntesis,
|
| 580 |
+
|
| 581 |
+
08:11.800 --> 08:16.920
|
| 582 |
+
5 dividido 9, que es el primer valor que
|
| 583 |
+
tenemos ac谩,
|
| 584 |
+
|
| 585 |
+
08:16.920 --> 08:20.920
|
| 586 |
+
seguido de una multiplicaci贸n, 驴de
|
| 587 |
+
qui茅n?
|
| 588 |
+
|
| 589 |
+
08:20.920 --> 08:24.600
|
| 590 |
+
De la temperatura en Fahrenheit, menos 32.
|
| 591 |
+
|
| 592 |
+
08:24.600 --> 08:28.280
|
| 593 |
+
Entonces vamos a colocar por ac谩 nuestra
|
| 594 |
+
temperatura en
|
| 595 |
+
|
| 596 |
+
08:28.280 --> 08:32.280
|
| 597 |
+
Fahrenheit, menos
|
| 598 |
+
32.
|
| 599 |
+
|
| 600 |
+
08:32.280 --> 08:36.800
|
| 601 |
+
Y aqu铆 ya tendr铆amos nuestra f贸rmula por
|
| 602 |
+
cada uno de los
|
| 603 |
+
|
| 604 |
+
08:36.800 --> 08:40.360
|
| 605 |
+
elementos, y ya lo estamos agregando a una
|
| 606 |
+
variable,
|
| 607 |
+
|
| 608 |
+
08:40.360 --> 08:43.880
|
| 609 |
+
que es esta de las temperaturas en Celsius.
|
| 610 |
+
|
| 611 |
+
08:43.880 --> 08:47.560
|
| 612 |
+
Vamos a colocar un console.log, en donde
|
| 613 |
+
vamos a revisar,
|
| 614 |
+
|
| 615 |
+
08:47.560 --> 08:48.240
|
| 616 |
+
驴qui茅n?
|
| 617 |
+
|
| 618 |
+
08:48.240 --> 08:49.960
|
| 619 |
+
Las temperaturas en
|
| 620 |
+
Fahrenheit.
|
| 621 |
+
|
| 622 |
+
08:49.960 --> 08:53.680
|
| 623 |
+
Entonces, temperatures, voy a colocar esto
|
| 624 |
+
as铆.
|
| 625 |
+
|
| 626 |
+
08:53.680 --> 08:56.960
|
| 627 |
+
Ups, no, no todo, solo el nombre de la
|
| 628 |
+
variable.
|
| 629 |
+
|
| 630 |
+
08:56.960 --> 09:02.160
|
| 631 |
+
Temperatures in Fahrenheit, vamos a
|
| 632 |
+
colocarlo as铆.
|
| 633 |
+
|
| 634 |
+
09:02.160 --> 09:04.440
|
| 635 |
+
Y colocamos ac谩 nuestra
|
| 636 |
+
variable,
|
| 637 |
+
|
| 638 |
+
09:04.440 --> 09:08.120
|
| 639 |
+
para que no la arroje, seguido de un console.
|
| 640 |
+
log,
|
| 641 |
+
|
| 642 |
+
09:08.120 --> 09:11.200
|
| 643 |
+
en donde tambi茅n vamos a revisar las
|
| 644 |
+
temperaturas en grados
|
| 645 |
+
|
| 646 |
+
09:11.200 --> 09:11.880
|
| 647 |
+
Celsius.
|
| 648 |
+
|
| 649 |
+
09:11.880 --> 09:16.560
|
| 650 |
+
Entonces colocamos por ac谩, temperaturas
|
| 651 |
+
en Celsius,
|
| 652 |
+
|
| 653 |
+
09:16.560 --> 09:20.400
|
| 654 |
+
dos puntos, y colocamos ac谩
|
| 655 |
+
esto.
|
| 656 |
+
|
| 657 |
+
09:20.400 --> 09:23.960
|
| 658 |
+
Vamos a guardar, corremos nuevamente
|
| 659 |
+
nuestro c贸digo,
|
| 660 |
+
|
| 661 |
+
09:23.960 --> 09:27.720
|
| 662 |
+
y aqu铆 ya tenemos nuestras temperaturas en
|
| 663 |
+
Fahrenheit,
|
| 664 |
+
|
| 665 |
+
09:27.720 --> 09:31.000
|
| 666 |
+
que aqu铆 ya vemos el tema de que no nos
|
| 667 |
+
est谩 mutando nuestra
|
| 668 |
+
|
| 669 |
+
09:31.000 --> 09:32.040
|
| 670 |
+
array.
|
| 671 |
+
|
| 672 |
+
09:32.040 --> 09:35.240
|
| 673 |
+
Y segundo, estamos viendo ya la conversi贸n.
|
| 674 |
+
|
| 675 |
+
09:35.240 --> 09:39.640
|
| 676 |
+
Corremos nuestro c贸digo, y aqu铆 ya nos
|
| 677 |
+
salen las temperaturas
|
| 678 |
+
|
| 679 |
+
09:39.640 --> 09:40.520
|
| 680 |
+
en
|
| 681 |
+
Fahrenheit.
|
| 682 |
+
|
| 683 |
+
09:40.520 --> 09:45.080
|
| 684 |
+
Aqu铆 algo interesante es que no nos
|
| 685 |
+
modific贸 el array original,
|
| 686 |
+
|
| 687 |
+
09:45.080 --> 09:47.960
|
| 688 |
+
y adicional, tenemos nuestras temperaturas
|
| 689 |
+
en Celsius.
|
| 690 |
+
|
| 691 |
+
09:47.960 --> 09:50.760
|
| 692 |
+
Entonces, aplicamos justamente esto que
|
| 693 |
+
vimos en nuestro
|
| 694 |
+
|
| 695 |
+
09:50.760 --> 09:55.480
|
| 696 |
+
documento, en donde tenemos que en map va
|
| 697 |
+
a suceder algo,
|
| 698 |
+
|
| 699 |
+
09:55.480 --> 10:00.640
|
| 700 |
+
una funci贸n cualquiera, y nos va a arrojar
|
| 701 |
+
en cada una de las
|
| 702 |
+
|
| 703 |
+
10:00.640 --> 10:02.720
|
| 704 |
+
posiciones un valor
|
| 705 |
+
diferente.
|
| 706 |
+
|
| 707 |
+
10:02.720 --> 10:06.000
|
| 708 |
+
Ahora, revisemos otro
|
| 709 |
+
ejercicio.
|
| 710 |
+
|
| 711 |
+
10:06.000 --> 10:10.640
|
| 712 |
+
Tenemos por ac谩, suma de los elementos en
|
| 713 |
+
un array.
|
| 714 |
+
|
| 715 |
+
10:10.640 --> 10:14.680
|
| 716 |
+
Crea un programa que tome los n煤meros de
|
| 717 |
+
un array,
|
| 718 |
+
|
| 719 |
+
10:14.680 --> 10:18.920
|
| 720 |
+
y justamente calcula la suma de todos los
|
| 721 |
+
elementos de un
|
| 722 |
+
|
| 723 |
+
10:18.920 --> 10:19.640
|
| 724 |
+
array.
|
| 725 |
+
|
| 726 |
+
10:19.640 --> 10:22.120
|
| 727 |
+
Por favor, cu茅ntame en los comentarios que
|
| 728 |
+
utilizar铆as,
|
| 729 |
+
|
| 730 |
+
10:22.120 --> 10:24.400
|
| 731 |
+
map o
|
| 732 |
+
foliage.
|
| 733 |
+
|
| 734 |
+
10:24.400 --> 10:27.320
|
| 735 |
+
Yo, mientras t煤 vas escribiendo eso,
|
| 736 |
+
|
| 737 |
+
10:27.320 --> 10:29.360
|
| 738 |
+
yo voy a ir colocando ac谩 el t铆tulo,
|
| 739 |
+
|
| 740 |
+
10:29.360 --> 10:35.160
|
| 741 |
+
exercise, sum of elements in an array.
|
| 742 |
+
|
| 743 |
+
10:35.160 --> 10:36.160
|
| 744 |
+
OK.
|
| 745 |
+
|
| 746 |
+
10:36.160 --> 10:37.360
|
| 747 |
+
Vamos a irlo a
|
| 748 |
+
revisar.
|
| 749 |
+
|
| 750 |
+
10:37.360 --> 10:41.080
|
| 751 |
+
Vamos a crear nuestro array, que en este
|
| 752 |
+
caso es const,
|
| 753 |
+
|
| 754 |
+
10:41.080 --> 10:45.800
|
| 755 |
+
numbers va a ser igual aqu铆 a numbers en
|
| 756 |
+
plural,
|
| 757 |
+
|
| 758 |
+
10:45.800 --> 10:51.560
|
| 759 |
+
y aqu铆 va a ser igual a, vamos a colocar 1, 2,
|
| 760 |
+
3, 4, y 5.
|
| 761 |
+
|
| 762 |
+
10:51.560 --> 10:55.440
|
| 763 |
+
Seguido, creo que por ac谩 tenemos otro,
|
| 764 |
+
entonces,
|
| 765 |
+
|
| 766 |
+
10:55.440 --> 10:57.920
|
| 767 |
+
new
|
| 768 |
+
numbers.
|
| 769 |
+
|
| 770 |
+
10:57.920 --> 11:01.640
|
| 771 |
+
Ahora, lo que vamos a hacer es crearnos
|
| 772 |
+
una variable,
|
| 773 |
+
|
| 774 |
+
11:01.640 --> 11:07.360
|
| 775 |
+
en este caso ser铆a let suma, y este vamos
|
| 776 |
+
a inicializarlo
|
| 777 |
+
|
| 778 |
+
11:07.360 --> 11:09.320
|
| 779 |
+
justamente en
|
| 780 |
+
0.
|
| 781 |
+
|
| 782 |
+
11:09.320 --> 11:09.920
|
| 783 |
+
驴Por
|
| 784 |
+
qu茅?
|
| 785 |
+
|
| 786 |
+
11:09.920 --> 11:14.120
|
| 787 |
+
Porque queremos almacenar ac谩 el nuevo
|
| 788 |
+
valor que justamente
|
| 789 |
+
|
| 790 |
+
11:14.120 --> 11:16.720
|
| 791 |
+
necesitamos, que es el de la suma de todos
|
| 792 |
+
los n煤meros del
|
| 793 |
+
|
| 794 |
+
11:16.720 --> 11:17.760
|
| 795 |
+
array.
|
| 796 |
+
|
| 797 |
+
11:17.760 --> 11:21.960
|
| 798 |
+
Para ello, lo que vamos a hacer es tomar
|
| 799 |
+
new numbers y vamos
|
| 800 |
+
|
| 801 |
+
11:21.960 --> 11:27.640
|
| 802 |
+
a aplicar nuestro m茅todo, que en este caso
|
| 803 |
+
ser铆a for each.
|
| 804 |
+
|
| 805 |
+
11:27.640 --> 11:31.280
|
| 806 |
+
Este for each, lo que nos va a permitir es
|
| 807 |
+
tomar cada uno de
|
| 808 |
+
|
| 809 |
+
11:31.280 --> 11:33.760
|
| 810 |
+
los elementos y empezarlos a
|
| 811 |
+
sumar.
|
| 812 |
+
|
| 813 |
+
11:33.760 --> 11:37.880
|
| 814 |
+
Entonces, vamos a tomar number, que ser铆a
|
| 815 |
+
por cada uno,
|
| 816 |
+
|
| 817 |
+
11:37.880 --> 11:40.120
|
| 818 |
+
y retornemos
|
| 819 |
+
justamente.
|
| 820 |
+
|
| 821 |
+
11:40.120 --> 11:41.640
|
| 822 |
+
Vamos a tomar la
|
| 823 |
+
suma.
|
| 824 |
+
|
| 825 |
+
11:41.640 --> 11:46.480
|
| 826 |
+
Voy a crear ac谩 unas llaves para colocarlo
|
| 827 |
+
en un salto de l铆nea.
|
| 828 |
+
|
| 829 |
+
11:46.480 --> 11:53.640
|
| 830 |
+
Coloco suma, y esa suma ser铆a la suma
|
| 831 |
+
anterior m谩s el valor de
|
| 832 |
+
|
| 833 |
+
11:53.640 --> 11:55.720
|
| 834 |
+
el nuevo n煤mero que
|
| 835 |
+
tengamos.
|
| 836 |
+
|
| 837 |
+
11:55.720 --> 12:00.520
|
| 838 |
+
Esto en JavaScript tambi茅n se puede
|
| 839 |
+
escribir como m谩s igual
|
| 840 |
+
|
| 841 |
+
12:00.520 --> 12:01.840
|
| 842 |
+
number.
|
| 843 |
+
|
| 844 |
+
12:01.840 --> 12:03.200
|
| 845 |
+
Y ya tendr铆amos
|
| 846 |
+
eso.
|
| 847 |
+
|
| 848 |
+
12:03.200 --> 12:06.880
|
| 849 |
+
Y lo que vamos a hacer es console.log,
|
| 850 |
+
驴de qui茅n?
|
| 851 |
+
|
| 852 |
+
12:06.880 --> 12:10.400
|
| 853 |
+
De new numbers, que ser铆an los n煤meros que
|
| 854 |
+
tenemos en el array.
|
| 855 |
+
|
| 856 |
+
12:10.400 --> 12:12.120
|
| 857 |
+
Voy a colocar por ac谩 tambi茅n un mensajito,
|
| 858 |
+
|
| 859 |
+
12:12.120 --> 12:14.440
|
| 860 |
+
as铆 como hicimos en el ejercicio pasado.
|
| 861 |
+
|
| 862 |
+
12:14.440 --> 12:21.000
|
| 863 |
+
Voy a colocar array of numbers y voy a
|
| 864 |
+
colocar console.log,
|
| 865 |
+
|
| 866 |
+
12:21.000 --> 12:21.960
|
| 867 |
+
驴de
|
| 868 |
+
qui茅n?
|
| 869 |
+
|
| 870 |
+
12:21.960 --> 12:24.600
|
| 871 |
+
De la suma de todos los
|
| 872 |
+
n煤meros.
|
| 873 |
+
|
| 874 |
+
12:24.600 --> 12:29.440
|
| 875 |
+
Entonces, voy a colocar sum of numbers.
|
| 876 |
+
|
| 877 |
+
12:29.440 --> 12:33.360
|
| 878 |
+
Y aqu铆 le coloco nuestra variable suma.
|
| 879 |
+
|
| 880 |
+
12:33.360 --> 12:35.080
|
| 881 |
+
Vamos a
|
| 882 |
+
guardar.
|
| 883 |
+
|
| 884 |
+
12:35.080 --> 12:38.880
|
| 885 |
+
Revisamos nuestro c贸digo y vemos nuestro
|
| 886 |
+
array y la suma de
|
| 887 |
+
|
| 888 |
+
12:38.880 --> 12:39.560
|
| 889 |
+
todos
|
| 890 |
+
ellos.
|
| 891 |
+
|
| 892 |
+
12:39.560 --> 12:44.840
|
| 893 |
+
Revisemos 5 m谩s 4, 9 m谩s este 1, 10,
|
| 894 |
+
y estos dos aqu铆.
|
| 895 |
+
|
| 896 |
+
12:44.840 --> 12:48.160
|
| 897 |
+
Nos qued贸 genial el c贸digo, as铆 que por
|
| 898 |
+
favor cu茅ntame en los
|
| 899 |
+
|
| 900 |
+
12:48.160 --> 12:51.040
|
| 901 |
+
comentarios c贸mo te quedaron estos dos
|
| 902 |
+
ejercicios y si le
|
| 903 |
+
|
| 904 |
+
12:51.040 --> 13:05.680
|
| 905 |
+
pertinaste, por supuesto, al uso de map y
|
| 906 |
+
for each.
|
| 907 |
+
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/04-Resumen.html
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/04-clase-map-foreach_d7b1a93f-0f56-4fd3-a419-c28c09dc2a16.js
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
// Methods that iterate over an array.
|
| 2 |
+
// Methods that DO NOT modify the original array (Immutability).
|
| 3 |
+
|
| 4 |
+
// map()
|
| 5 |
+
|
| 6 |
+
const numbers = [1, 2, 3, 4, 5]
|
| 7 |
+
const squaredNumbers = numbers.map(num => num * num)
|
| 8 |
+
|
| 9 |
+
console.log(numbers)
|
| 10 |
+
console.log(squaredNumbers)
|
| 11 |
+
|
| 12 |
+
// forEach()
|
| 13 |
+
|
| 14 |
+
const colors = ['red', 'pink', 'blue']
|
| 15 |
+
const iteratedColors = colors.forEach(color => console.log(color))
|
| 16 |
+
|
| 17 |
+
console.log(colors)
|
| 18 |
+
console.log(iteratedColors)
|
| 19 |
+
|
| 20 |
+
// Exercise: Fahrenheit to Celsius conversion
|
| 21 |
+
|
| 22 |
+
const temperaturesInFahrenheit = [32, 68, 95, 104, 212]
|
| 23 |
+
|
| 24 |
+
const temperaturesInCelsius = temperaturesInFahrenheit.map(fahrenheit => (5/9) * (fahrenheit - 32))
|
| 25 |
+
|
| 26 |
+
console.log('Temperatures In Fahrenheit: ', temperaturesInFahrenheit)
|
| 27 |
+
console.log('Temperatures In Celsius: ', temperaturesInCelsius)
|
| 28 |
+
|
| 29 |
+
// Exercise: Sum of Elements in an Array
|
| 30 |
+
|
| 31 |
+
const newNumbers = [1, 2, 3, 4, 5]
|
| 32 |
+
|
| 33 |
+
let sum = 0
|
| 34 |
+
|
| 35 |
+
newNumbers.forEach(number => {
|
| 36 |
+
sum += number
|
| 37 |
+
})
|
| 38 |
+
|
| 39 |
+
console.log('Array of Numbers: ', newNumbers)
|
| 40 |
+
console.log('Sum of Numbers: ', sum)
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/05-Lecturas recomendadas.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
https://github.com/platzi/basico-js
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/05-M茅todos Filter y Reduce en JavaScript Uso y Ejemplos Pr谩cticos.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:293e4b713a401fa2895e8e60e4683c090862ffc6ad0ab04c5e973f569b56cac5
|
| 3 |
+
size 61041444
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/05-M茅todos Filter y Reduce en JavaScript Uso y Ejemplos Pr谩cticos.vtt
ADDED
|
@@ -0,0 +1,1198 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
WEBVTT
|
| 2 |
+
|
| 3 |
+
00:00.000 --> 00:03.540
|
| 4 |
+
En esta clase vamos a estar hablando sobre
|
| 5 |
+
dos m茅todos de Arrays
|
| 6 |
+
|
| 7 |
+
00:03.540 --> 00:06.080
|
| 8 |
+
que no modifican el Array
|
| 9 |
+
original.
|
| 10 |
+
|
| 11 |
+
00:06.080 --> 00:08.740
|
| 12 |
+
Ellos son Filter y
|
| 13 |
+
Reduce.
|
| 14 |
+
|
| 15 |
+
00:08.740 --> 00:11.040
|
| 16 |
+
Filter, en este
|
| 17 |
+
caso,
|
| 18 |
+
|
| 19 |
+
00:11.040 --> 00:13.680
|
| 20 |
+
nos va a mostrar que tenemos un Array,
|
| 21 |
+
|
| 22 |
+
00:13.680 --> 00:17.040
|
| 23 |
+
en este caso es 2, 4, 8, 10 y
|
| 24 |
+
12,
|
| 25 |
+
|
| 26 |
+
00:17.040 --> 00:21.180
|
| 27 |
+
y resulta que cada uno de ellos va a pasar
|
| 28 |
+
por una funci贸n,
|
| 29 |
+
|
| 30 |
+
00:21.180 --> 00:24.540
|
| 31 |
+
pero esta funci贸n debe ser a su vez una
|
| 32 |
+
condici贸n,
|
| 33 |
+
|
| 34 |
+
00:24.540 --> 00:28.340
|
| 35 |
+
es decir, si este n煤mero, en este caso,
|
| 36 |
+
|
| 37 |
+
00:28.340 --> 00:30.340
|
| 38 |
+
pasa esa
|
| 39 |
+
condici贸n,
|
| 40 |
+
|
| 41 |
+
00:30.340 --> 00:33.340
|
| 42 |
+
se crea un nuevo Array con esos
|
| 43 |
+
elementos
|
| 44 |
+
|
| 45 |
+
00:33.340 --> 00:35.340
|
| 46 |
+
que pasaron la
|
| 47 |
+
condici贸n.
|
| 48 |
+
|
| 49 |
+
00:35.340 --> 00:39.140
|
| 50 |
+
Por ejemplo, aqu铆 estamos viendo que los
|
| 51 |
+
n煤meros mayores a 5,
|
| 52 |
+
|
| 53 |
+
00:39.140 --> 00:42.940
|
| 54 |
+
por ejemplo, est谩n pasando aqu铆 a este
|
| 55 |
+
nuevo Array
|
| 56 |
+
|
| 57 |
+
00:42.940 --> 00:45.340
|
| 58 |
+
y se est谩 creando el Array con los
|
| 59 |
+
n煤meros
|
| 60 |
+
|
| 61 |
+
00:45.340 --> 00:47.540
|
| 62 |
+
que sean mayores a
|
| 63 |
+
5.
|
| 64 |
+
|
| 65 |
+
00:47.540 --> 00:49.540
|
| 66 |
+
En este caso vamos a revisarlo en el
|
| 67 |
+
c贸digo
|
| 68 |
+
|
| 69 |
+
00:49.540 --> 00:52.240
|
| 70 |
+
para ver precisamente c贸mo es que funciona.
|
| 71 |
+
|
| 72 |
+
00:52.240 --> 00:54.940
|
| 73 |
+
Entonces vamos a colocar por ac谩 un
|
| 74 |
+
comentario
|
| 75 |
+
|
| 76 |
+
00:54.940 --> 00:56.340
|
| 77 |
+
que se llame
|
| 78 |
+
Filter,
|
| 79 |
+
|
| 80 |
+
00:56.340 --> 00:59.840
|
| 81 |
+
y vamos a crear una variable que se llame
|
| 82 |
+
Numbers,
|
| 83 |
+
|
| 84 |
+
00:59.840 --> 01:03.140
|
| 85 |
+
y dentro de Numbers vamos a crear un Array
|
| 86 |
+
de n煤meros,
|
| 87 |
+
|
| 88 |
+
01:03.140 --> 01:07.440
|
| 89 |
+
puede ser, por ejemplo, 2, 3, 4,
|
| 90 |
+
5,
|
| 91 |
+
|
| 92 |
+
01:07.440 --> 01:11.140
|
| 93 |
+
ll茅vamolo hasta 10, 8, 9 y
|
| 94 |
+
10.
|
| 95 |
+
|
| 96 |
+
01:11.140 --> 01:13.240
|
| 97 |
+
Teniendo en cuenta este
|
| 98 |
+
Array,
|
| 99 |
+
|
| 100 |
+
01:13.240 --> 01:15.940
|
| 101 |
+
lo que vamos a hacer es crear otra
|
| 102 |
+
variable
|
| 103 |
+
|
| 104 |
+
01:15.940 --> 01:20.240
|
| 105 |
+
en donde vamos a crear solamente los
|
| 106 |
+
n煤meros que son pares.
|
| 107 |
+
|
| 108 |
+
01:20.240 --> 01:21.240
|
| 109 |
+
驴C贸mo lo vamos a
|
| 110 |
+
crear?
|
| 111 |
+
|
| 112 |
+
01:21.240 --> 01:23.840
|
| 113 |
+
Vamos a decir
|
| 114 |
+
evenNumbers,
|
| 115 |
+
|
| 116 |
+
01:23.840 --> 01:28.240
|
| 117 |
+
y va a ser el Array que ten铆amos inicialmente,
|
| 118 |
+
|
| 119 |
+
01:28.240 --> 01:30.140
|
| 120 |
+
punto
|
| 121 |
+
Filter,
|
| 122 |
+
|
| 123 |
+
01:30.140 --> 01:33.940
|
| 124 |
+
y dentro de Filter es que vamos a crear
|
| 125 |
+
esa funci贸n
|
| 126 |
+
|
| 127 |
+
01:33.940 --> 01:37.440
|
| 128 |
+
que nos va a retornar los elementos que s铆
|
| 129 |
+
queremos,
|
| 130 |
+
|
| 131 |
+
01:37.440 --> 01:39.840
|
| 132 |
+
que en este caso son los n煤meros pares.
|
| 133 |
+
|
| 134 |
+
01:39.840 --> 01:40.840
|
| 135 |
+
驴C贸mo lo
|
| 136 |
+
hacemos?
|
| 137 |
+
|
| 138 |
+
01:40.840 --> 01:42.940
|
| 139 |
+
Creamos aqu铆 un
|
| 140 |
+
par谩metro
|
| 141 |
+
|
| 142 |
+
01:42.940 --> 01:44.840
|
| 143 |
+
que va a ser cada uno de los elementos,
|
| 144 |
+
|
| 145 |
+
01:44.840 --> 01:46.740
|
| 146 |
+
por eso lo ponemos en
|
| 147 |
+
singular,
|
| 148 |
+
|
| 149 |
+
01:46.740 --> 01:49.040
|
| 150 |
+
seguido vamos a colocar un ArrowFunction,
|
| 151 |
+
|
| 152 |
+
01:49.040 --> 01:52.440
|
| 153 |
+
y aqu铆 en este lado vamos a colocar
|
| 154 |
+
justamente
|
| 155 |
+
|
| 156 |
+
01:52.440 --> 01:54.040
|
| 157 |
+
lo que nos va a
|
| 158 |
+
retornar,
|
| 159 |
+
|
| 160 |
+
01:54.040 --> 01:56.640
|
| 161 |
+
o la condici贸n que queremos
|
| 162 |
+
obtener
|
| 163 |
+
|
| 164 |
+
01:56.640 --> 01:59.040
|
| 165 |
+
justamente para este
|
| 166 |
+
filtrado.
|
| 167 |
+
|
| 168 |
+
01:59.040 --> 01:59.840
|
| 169 |
+
驴C贸mo
|
| 170 |
+
ser铆a?
|
| 171 |
+
|
| 172 |
+
01:59.840 --> 02:01.740
|
| 173 |
+
Vamos a colocar
|
| 174 |
+
Number,
|
| 175 |
+
|
| 176 |
+
02:01.740 --> 02:05.340
|
| 177 |
+
aqu铆 vamos a colocar m贸dulo
|
| 178 |
+
2,
|
| 179 |
+
|
| 180 |
+
02:05.340 --> 02:08.740
|
| 181 |
+
que en este caso nos va a arrojar un n煤mero.
|
| 182 |
+
|
| 183 |
+
02:08.740 --> 02:12.740
|
| 184 |
+
Si el m贸dulo de este n煤mero es igual a cero,
|
| 185 |
+
|
| 186 |
+
02:12.740 --> 02:15.340
|
| 187 |
+
ya sabemos que es un n煤mero
|
| 188 |
+
par.
|
| 189 |
+
|
| 190 |
+
02:15.340 --> 02:18.140
|
| 191 |
+
Para esto vamos a revisar qu茅 es un m贸dulo.
|
| 192 |
+
|
| 193 |
+
02:18.140 --> 02:21.440
|
| 194 |
+
B谩sicamente, si tenemos una divisi贸n,
|
| 195 |
+
|
| 196 |
+
02:21.440 --> 02:24.540
|
| 197 |
+
en este caso tomemos el n煤mero 4, por ejemplo,
|
| 198 |
+
|
| 199 |
+
02:24.540 --> 02:27.240
|
| 200 |
+
y estamos haciendo la divisi贸n con 2,
|
| 201 |
+
|
| 202 |
+
02:27.240 --> 02:29.440
|
| 203 |
+
supongamos que esto es lo que normalmente
|
| 204 |
+
hacemos
|
| 205 |
+
|
| 206 |
+
02:29.440 --> 02:31.940
|
| 207 |
+
cuando creamos una
|
| 208 |
+
divisi贸n,
|
| 209 |
+
|
| 210 |
+
02:31.940 --> 02:33.240
|
| 211 |
+
voy a colocarlo
|
| 212 |
+
as铆,
|
| 213 |
+
|
| 214 |
+
02:33.240 --> 02:35.040
|
| 215 |
+
tenemos 4 dividido
|
| 216 |
+
2,
|
| 217 |
+
|
| 218 |
+
02:35.040 --> 02:38.140
|
| 219 |
+
y aqu铆 lo que hacemos es crear un valor,
|
| 220 |
+
|
| 221 |
+
02:38.140 --> 02:39.940
|
| 222 |
+
aqu铆 decimos cu谩ntas veces
|
| 223 |
+
est谩,
|
| 224 |
+
|
| 225 |
+
02:39.940 --> 02:41.540
|
| 226 |
+
entonces ser铆a
|
| 227 |
+
2,
|
| 228 |
+
|
| 229 |
+
02:41.540 --> 02:43.440
|
| 230 |
+
2 por 2,
|
| 231 |
+
4,
|
| 232 |
+
|
| 233 |
+
02:43.440 --> 02:44.940
|
| 234 |
+
y aqu铆 ser铆a
|
| 235 |
+
cero.
|
| 236 |
+
|
| 237 |
+
02:44.940 --> 02:49.040
|
| 238 |
+
Si ese m贸dulo, este valor del m贸dulo es cero,
|
| 239 |
+
|
| 240 |
+
02:49.040 --> 02:52.140
|
| 241 |
+
pues precisamente ya sabemos que es un
|
| 242 |
+
n煤mero par.
|
| 243 |
+
|
| 244 |
+
02:52.140 --> 02:54.040
|
| 245 |
+
De lo contrario, si el n煤mero no es cero,
|
| 246 |
+
|
| 247 |
+
02:54.040 --> 02:56.940
|
| 248 |
+
pues ya sabemos que no es un n煤mero par.
|
| 249 |
+
|
| 250 |
+
02:56.940 --> 03:00.040
|
| 251 |
+
Ahora vamos a revisar un console.log,
|
| 252 |
+
|
| 253 |
+
03:00.040 --> 03:03.940
|
| 254 |
+
donde revisemos tanto los n煤meros
|
| 255 |
+
iniciales que creamos,
|
| 256 |
+
|
| 257 |
+
03:03.940 --> 03:05.040
|
| 258 |
+
驴como
|
| 259 |
+
qui茅n?
|
| 260 |
+
|
| 261 |
+
03:05.040 --> 03:07.940
|
| 262 |
+
Como los n煤meros pares que acabamos de
|
| 263 |
+
filtrar.
|
| 264 |
+
|
| 265 |
+
03:07.940 --> 03:10.540
|
| 266 |
+
Vamos a correr nuestro
|
| 267 |
+
c贸digo,
|
| 268 |
+
|
| 269 |
+
03:10.540 --> 03:12.440
|
| 270 |
+
le decimos
|
| 271 |
+
node,
|
| 272 |
+
|
| 273 |
+
03:12.440 --> 03:13.640
|
| 274 |
+
clase,
|
| 275 |
+
|
| 276 |
+
03:13.640 --> 03:15.240
|
| 277 |
+
filter,
|
| 278 |
+
|
| 279 |
+
03:15.240 --> 03:18.140
|
| 280 |
+
y aqu铆 vemos que tenemos nuestros
|
| 281 |
+
n煤meros
|
| 282 |
+
|
| 283 |
+
03:18.140 --> 03:19.540
|
| 284 |
+
de 1 a
|
| 285 |
+
10,
|
| 286 |
+
|
| 287 |
+
03:19.540 --> 03:21.540
|
| 288 |
+
y seguido tenemos nuestro
|
| 289 |
+
array
|
| 290 |
+
|
| 291 |
+
03:21.540 --> 03:24.740
|
| 292 |
+
solamente con n煤meros que son pares.
|
| 293 |
+
|
| 294 |
+
03:24.740 --> 03:27.240
|
| 295 |
+
Ahora vamos con el otro
|
| 296 |
+
m茅todo,
|
| 297 |
+
|
| 298 |
+
03:27.240 --> 03:29.140
|
| 299 |
+
que es
|
| 300 |
+
reduce.
|
| 301 |
+
|
| 302 |
+
03:29.140 --> 03:31.540
|
| 303 |
+
驴Qu茅 nos hace este
|
| 304 |
+
m茅todo?
|
| 305 |
+
|
| 306 |
+
03:31.540 --> 03:33.140
|
| 307 |
+
Como su nombre lo
|
| 308 |
+
indica,
|
| 309 |
+
|
| 310 |
+
03:33.140 --> 03:36.340
|
| 311 |
+
es b谩sicamente reducir un
|
| 312 |
+
array
|
| 313 |
+
|
| 314 |
+
03:36.340 --> 03:38.040
|
| 315 |
+
a un solo
|
| 316 |
+
valor.
|
| 317 |
+
|
| 318 |
+
03:38.040 --> 03:39.240
|
| 319 |
+
En este
|
| 320 |
+
caso,
|
| 321 |
+
|
| 322 |
+
03:39.240 --> 03:42.140
|
| 323 |
+
tenemos el n煤mero 1, 2, 3 y
|
| 324 |
+
4,
|
| 325 |
+
|
| 326 |
+
03:42.140 --> 03:43.940
|
| 327 |
+
y lo que se est谩 haciendo
|
| 328 |
+
es
|
| 329 |
+
|
| 330 |
+
03:43.940 --> 03:45.940
|
| 331 |
+
sumando todos los
|
| 332 |
+
valores,
|
| 333 |
+
|
| 334 |
+
03:45.940 --> 03:48.140
|
| 335 |
+
obteniendo justamente
|
| 336 |
+
1.
|
| 337 |
+
|
| 338 |
+
03:48.140 --> 03:49.740
|
| 339 |
+
Esa ser铆a la
|
| 340 |
+
reducci贸n.
|
| 341 |
+
|
| 342 |
+
03:49.740 --> 03:51.840
|
| 343 |
+
En este caso, 4 m谩s 3 es
|
| 344 |
+
7,
|
| 345 |
+
|
| 346 |
+
03:51.840 --> 03:53.040
|
| 347 |
+
7 m谩s 2,
|
| 348 |
+
9,
|
| 349 |
+
|
| 350 |
+
03:53.040 --> 03:54.640
|
| 351 |
+
y m谩s 1,
|
| 352 |
+
10.
|
| 353 |
+
|
| 354 |
+
03:54.640 --> 03:56.940
|
| 355 |
+
Vamos a ver c贸mo ser铆a esto en el c贸digo.
|
| 356 |
+
|
| 357 |
+
03:56.940 --> 03:58.840
|
| 358 |
+
Coloquemos ac谩
|
| 359 |
+
reduce,
|
| 360 |
+
|
| 361 |
+
03:58.840 --> 04:02.240
|
| 362 |
+
y vamos a empezar a crear nuestras variables.
|
| 363 |
+
|
| 364 |
+
04:02.240 --> 04:04.040
|
| 365 |
+
Voy a colocar
|
| 366 |
+
ac谩
|
| 367 |
+
|
| 368 |
+
04:04.040 --> 04:06.040
|
| 369 |
+
una constante que se
|
| 370 |
+
llame
|
| 371 |
+
|
| 372 |
+
04:06.040 --> 04:08.040
|
| 373 |
+
numbersReduce,
|
| 374 |
+
|
| 375 |
+
04:08.040 --> 04:10.040
|
| 376 |
+
para que hagamos una
|
| 377 |
+
diferenciaci贸n
|
| 378 |
+
|
| 379 |
+
04:10.040 --> 04:13.540
|
| 380 |
+
con esta otra variable que creamos aqu铆
|
| 381 |
+
arriba,
|
| 382 |
+
|
| 383 |
+
04:13.540 --> 04:15.840
|
| 384 |
+
y vamos a empezar a crear nuestro
|
| 385 |
+
array
|
| 386 |
+
|
| 387 |
+
04:15.840 --> 04:17.840
|
| 388 |
+
en este caso puede ser, por ejemplo,
|
| 389 |
+
|
| 390 |
+
04:17.840 --> 04:19.640
|
| 391 |
+
de n煤meros del 1 al
|
| 392 |
+
5.
|
| 393 |
+
|
| 394 |
+
04:19.640 --> 04:22.940
|
| 395 |
+
Entonces, 1, 2, 3, 4 y
|
| 396 |
+
5.
|
| 397 |
+
|
| 398 |
+
04:22.940 --> 04:24.440
|
| 399 |
+
驴Qu茅 vamos a hacer
|
| 400 |
+
ahora?
|
| 401 |
+
|
| 402 |
+
04:24.440 --> 04:26.040
|
| 403 |
+
Vamos a
|
| 404 |
+
sumarlos.
|
| 405 |
+
|
| 406 |
+
04:26.040 --> 04:27.940
|
| 407 |
+
Entonces, vamos a crear una
|
| 408 |
+
variable
|
| 409 |
+
|
| 410 |
+
04:27.940 --> 04:29.440
|
| 411 |
+
que se llame
|
| 412 |
+
suma,
|
| 413 |
+
|
| 414 |
+
04:29.440 --> 04:30.640
|
| 415 |
+
y dentro de
|
| 416 |
+
suma,
|
| 417 |
+
|
| 418 |
+
04:30.640 --> 04:32.240
|
| 419 |
+
vamos a colocar lo
|
| 420 |
+
siguiente,
|
| 421 |
+
|
| 422 |
+
04:32.240 --> 04:33.840
|
| 423 |
+
numbersReduce,
|
| 424 |
+
|
| 425 |
+
04:33.840 --> 04:34.940
|
| 426 |
+
y en este
|
| 427 |
+
caso,
|
| 428 |
+
|
| 429 |
+
04:34.940 --> 04:36.540
|
| 430 |
+
vamos a colocar, por
|
| 431 |
+
supuesto,
|
| 432 |
+
|
| 433 |
+
04:36.540 --> 04:37.740
|
| 434 |
+
nuestro
|
| 435 |
+
m茅todo.
|
| 436 |
+
|
| 437 |
+
04:37.740 --> 04:40.340
|
| 438 |
+
Este m茅todo no funciona as铆
|
| 439 |
+
solito.
|
| 440 |
+
|
| 441 |
+
04:40.340 --> 04:43.640
|
| 442 |
+
Nos toca agregarle ciertos
|
| 443 |
+
valores
|
| 444 |
+
|
| 445 |
+
04:43.640 --> 04:45.740
|
| 446 |
+
a nuestras funciones que va por dentro,
|
| 447 |
+
|
| 448 |
+
04:45.740 --> 04:47.640
|
| 449 |
+
para que precisamente
|
| 450 |
+
pueda
|
| 451 |
+
|
| 452 |
+
04:47.640 --> 04:49.340
|
| 453 |
+
funcionar el valor de la
|
| 454 |
+
soma.
|
| 455 |
+
|
| 456 |
+
04:49.340 --> 04:51.140
|
| 457 |
+
No va a funcionar as铆
|
| 458 |
+
solito.
|
| 459 |
+
|
| 460 |
+
04:51.140 --> 04:52.640
|
| 461 |
+
驴Qu茅 le vamos a
|
| 462 |
+
poner?
|
| 463 |
+
|
| 464 |
+
04:52.640 --> 04:54.240
|
| 465 |
+
脡l tiene
|
| 466 |
+
normalmente
|
| 467 |
+
|
| 468 |
+
04:54.240 --> 04:56.440
|
| 469 |
+
una funci贸n que recibe dos par谩metros.
|
| 470 |
+
|
| 471 |
+
04:56.440 --> 04:59.040
|
| 472 |
+
El primer par谩metro es un acumulador,
|
| 473 |
+
|
| 474 |
+
04:59.040 --> 05:00.340
|
| 475 |
+
entonces voy a
|
| 476 |
+
colocar
|
| 477 |
+
|
| 478 |
+
05:00.340 --> 05:03.040
|
| 479 |
+
accumulator,
|
| 480 |
+
|
| 481 |
+
05:03.040 --> 05:04.140
|
| 482 |
+
y
|
| 483 |
+
seguido,
|
| 484 |
+
|
| 485 |
+
05:04.140 --> 05:06.440
|
| 486 |
+
tenemos el
|
| 487 |
+
currentValue.
|
| 488 |
+
|
| 489 |
+
05:06.440 --> 05:09.240
|
| 490 |
+
Entonces,
|
| 491 |
+
currentValue.
|
| 492 |
+
|
| 493 |
+
05:09.240 --> 05:10.240
|
| 494 |
+
Entonces,
|
| 495 |
+
茅l,
|
| 496 |
+
|
| 497 |
+
05:10.240 --> 05:12.240
|
| 498 |
+
justamente como su nombre lo indica,
|
| 499 |
+
|
| 500 |
+
05:12.240 --> 05:14.440
|
| 501 |
+
va a ser como si tuvi茅ramos una variable,
|
| 502 |
+
|
| 503 |
+
05:14.440 --> 05:16.640
|
| 504 |
+
supongamos que tuvi茅ramos
|
| 505 |
+
led,
|
| 506 |
+
|
| 507 |
+
05:16.640 --> 05:18.940
|
| 508 |
+
acumulador,
|
| 509 |
+
|
| 510 |
+
05:18.940 --> 05:21.540
|
| 511 |
+
y este estuviera inicializado en
|
| 512 |
+
0.
|
| 513 |
+
|
| 514 |
+
05:21.540 --> 05:22.740
|
| 515 |
+
Entonces, es como si
|
| 516 |
+
tuvi茅ramos
|
| 517 |
+
|
| 518 |
+
05:22.740 --> 05:25.040
|
| 519 |
+
una variable
|
| 520 |
+
externa,
|
| 521 |
+
|
| 522 |
+
05:25.040 --> 05:26.540
|
| 523 |
+
en donde estamos
|
| 524 |
+
justamente
|
| 525 |
+
|
| 526 |
+
05:26.540 --> 05:28.340
|
| 527 |
+
guardando o
|
| 528 |
+
almacenando
|
| 529 |
+
|
| 530 |
+
05:28.340 --> 05:29.640
|
| 531 |
+
el valor de la
|
| 532 |
+
suma
|
| 533 |
+
|
| 534 |
+
05:29.640 --> 05:31.940
|
| 535 |
+
de cada uno de los
|
| 536 |
+
datos.
|
| 537 |
+
|
| 538 |
+
05:31.940 --> 05:33.640
|
| 539 |
+
Y el currentValue, por
|
| 540 |
+
supuesto,
|
| 541 |
+
|
| 542 |
+
05:33.640 --> 05:36.240
|
| 543 |
+
ser铆a cada uno de los valores del array.
|
| 544 |
+
|
| 545 |
+
05:36.240 --> 05:38.440
|
| 546 |
+
Entonces, as铆
|
| 547 |
+
funciona.
|
| 548 |
+
|
| 549 |
+
05:38.440 --> 05:40.340
|
| 550 |
+
Y lo 煤nico que nos har铆a
|
| 551 |
+
falta
|
| 552 |
+
|
| 553 |
+
05:40.340 --> 05:42.640
|
| 554 |
+
es retornar
|
| 555 |
+
justamente
|
| 556 |
+
|
| 557 |
+
05:42.640 --> 05:45.540
|
| 558 |
+
el acumulador
|
| 559 |
+
m谩s
|
| 560 |
+
|
| 561 |
+
05:45.540 --> 05:47.440
|
| 562 |
+
el
|
| 563 |
+
currentValue.
|
| 564 |
+
|
| 565 |
+
05:47.440 --> 05:50.340
|
| 566 |
+
Y adicional, debemos colocarle otro valor,
|
| 567 |
+
|
| 568 |
+
05:50.340 --> 05:52.840
|
| 569 |
+
que en este caso es el initialValue,
|
| 570 |
+
|
| 571 |
+
05:52.840 --> 05:54.040
|
| 572 |
+
para nosotros va a ser
|
| 573 |
+
0,
|
| 574 |
+
|
| 575 |
+
05:54.040 --> 05:57.040
|
| 576 |
+
no necesitamos que empiece en otro tipo de
|
| 577 |
+
valor,
|
| 578 |
+
|
| 579 |
+
05:57.040 --> 05:59.740
|
| 580 |
+
sino que le vamos a poner netamente 0.
|
| 581 |
+
|
| 582 |
+
05:59.740 --> 06:01.040
|
| 583 |
+
Y ahora, lo que
|
| 584 |
+
hacemos
|
| 585 |
+
|
| 586 |
+
06:01.040 --> 06:03.340
|
| 587 |
+
es colocar un
|
| 588 |
+
console.log,
|
| 589 |
+
|
| 590 |
+
06:03.340 --> 06:05.340
|
| 591 |
+
tanto de
|
| 592 |
+
numbersReduce,
|
| 593 |
+
|
| 594 |
+
06:05.340 --> 06:06.340
|
| 595 |
+
como de
|
| 596 |
+
qui茅n?
|
| 597 |
+
|
| 598 |
+
06:06.340 --> 06:07.140
|
| 599 |
+
De la
|
| 600 |
+
suma.
|
| 601 |
+
|
| 602 |
+
06:07.140 --> 06:08.440
|
| 603 |
+
Entonces,
|
| 604 |
+
console...
|
| 605 |
+
|
| 606 |
+
06:08.440 --> 06:10.240
|
| 607 |
+
Ups, se fue otra
|
| 608 |
+
cosa.
|
| 609 |
+
|
| 610 |
+
06:10.240 --> 06:12.340
|
| 611 |
+
Console.log
|
| 612 |
+
|
| 613 |
+
06:12.340 --> 06:13.140
|
| 614 |
+
驴de
|
| 615 |
+
qui茅n?
|
| 616 |
+
|
| 617 |
+
06:13.140 --> 06:14.140
|
| 618 |
+
De
|
| 619 |
+
suma.
|
| 620 |
+
|
| 621 |
+
06:14.140 --> 06:15.640
|
| 622 |
+
Entonces, vamos a
|
| 623 |
+
guardar,
|
| 624 |
+
|
| 625 |
+
06:15.640 --> 06:18.340
|
| 626 |
+
corremos nuestro
|
| 627 |
+
c贸digo,
|
| 628 |
+
|
| 629 |
+
06:18.340 --> 06:20.640
|
| 630 |
+
y aqu铆 ya revisamos que
|
| 631 |
+
tenemos
|
| 632 |
+
|
| 633 |
+
06:20.640 --> 06:23.140
|
| 634 |
+
uno, nuestro
|
| 635 |
+
array,
|
| 636 |
+
|
| 637 |
+
06:23.140 --> 06:24.640
|
| 638 |
+
que en este caso
|
| 639 |
+
ser铆a
|
| 640 |
+
|
| 641 |
+
06:24.640 --> 06:27.240
|
| 642 |
+
1, 2, 3, 4, 5, es este de
|
| 643 |
+
aqu铆,
|
| 644 |
+
|
| 645 |
+
06:27.240 --> 06:29.340
|
| 646 |
+
y suma, que es
|
| 647 |
+
justamente
|
| 648 |
+
|
| 649 |
+
06:29.340 --> 06:30.640
|
| 650 |
+
un solo
|
| 651 |
+
valor,
|
| 652 |
+
|
| 653 |
+
06:30.640 --> 06:32.340
|
| 654 |
+
el valor
|
| 655 |
+
reducido,
|
| 656 |
+
|
| 657 |
+
06:32.340 --> 06:35.640
|
| 658 |
+
que en este caso ser铆a
|
| 659 |
+
15.
|
| 660 |
+
|
| 661 |
+
06:35.640 --> 06:36.840
|
| 662 |
+
Por otro
|
| 663 |
+
lado,
|
| 664 |
+
|
| 665 |
+
06:36.840 --> 06:38.540
|
| 666 |
+
listo, nos sirve
|
| 667 |
+
para
|
| 668 |
+
|
| 669 |
+
06:38.540 --> 06:40.440
|
| 670 |
+
sumar elementos de un
|
| 671 |
+
array,
|
| 672 |
+
|
| 673 |
+
06:40.440 --> 06:42.040
|
| 674 |
+
eso est谩 muy
|
| 675 |
+
bien,
|
| 676 |
+
|
| 677 |
+
06:42.040 --> 06:45.140
|
| 678 |
+
pero tambi茅n nos sirve para otras cosas
|
| 679 |
+
reduce,
|
| 680 |
+
|
| 681 |
+
06:45.140 --> 06:46.240
|
| 682 |
+
como por
|
| 683 |
+
ejemplo,
|
| 684 |
+
|
| 685 |
+
06:46.240 --> 06:48.540
|
| 686 |
+
encontrar qu茅 tanto se
|
| 687 |
+
repite
|
| 688 |
+
|
| 689 |
+
06:48.540 --> 06:50.440
|
| 690 |
+
una palabra en un
|
| 691 |
+
array.
|
| 692 |
+
|
| 693 |
+
06:50.440 --> 06:52.440
|
| 694 |
+
Entonces, ac谩 por ejemplo, en reduce,
|
| 695 |
+
|
| 696 |
+
06:52.440 --> 06:54.240
|
| 697 |
+
lo que voy a colocarle
|
| 698 |
+
es
|
| 699 |
+
|
| 700 |
+
06:54.240 --> 06:56.840
|
| 701 |
+
caso, colocarlo en
|
| 702 |
+
min煤scula,
|
| 703 |
+
|
| 704 |
+
06:56.840 --> 06:58.140
|
| 705 |
+
caso1,
|
| 706 |
+
|
| 707 |
+
06:58.140 --> 07:00.340
|
| 708 |
+
y voy a crear por ac谩 otro que
|
| 709 |
+
diga
|
| 710 |
+
|
| 711 |
+
07:00.340 --> 07:02.240
|
| 712 |
+
caso2.
|
| 713 |
+
|
| 714 |
+
07:02.240 --> 07:04.340
|
| 715 |
+
Aqu铆 voy a hacer
|
| 716 |
+
scroll,
|
| 717 |
+
|
| 718 |
+
07:04.340 --> 07:05.540
|
| 719 |
+
y lo que vamos a
|
| 720 |
+
hacer
|
| 721 |
+
|
| 722 |
+
07:05.540 --> 07:06.840
|
| 723 |
+
es revisar lo
|
| 724 |
+
siguiente.
|
| 725 |
+
|
| 726 |
+
07:06.840 --> 07:09.040
|
| 727 |
+
Vamos a crear ahora un
|
| 728 |
+
array,
|
| 729 |
+
|
| 730 |
+
07:09.040 --> 07:10.740
|
| 731 |
+
pero este array ya no va a ser de n煤meros,
|
| 732 |
+
|
| 733 |
+
07:10.740 --> 07:12.640
|
| 734 |
+
sino que va a ser de
|
| 735 |
+
palabras.
|
| 736 |
+
|
| 737 |
+
07:12.640 --> 07:15.440
|
| 738 |
+
Entonces voy a colocarle
|
| 739 |
+
words,
|
| 740 |
+
|
| 741 |
+
07:15.440 --> 07:17.140
|
| 742 |
+
y dentro de este
|
| 743 |
+
array,
|
| 744 |
+
|
| 745 |
+
07:17.140 --> 07:18.640
|
| 746 |
+
lo que voy a hacer es
|
| 747 |
+
colocar
|
| 748 |
+
|
| 749 |
+
07:18.640 --> 07:19.640
|
| 750 |
+
diferentes
|
| 751 |
+
palabras.
|
| 752 |
+
|
| 753 |
+
07:19.640 --> 07:21.740
|
| 754 |
+
Entonces, por
|
| 755 |
+
ejemplo,
|
| 756 |
+
|
| 757 |
+
07:21.740 --> 07:23.040
|
| 758 |
+
apple,
|
| 759 |
+
|
| 760 |
+
07:23.040 --> 07:25.140
|
| 761 |
+
banana,
|
| 762 |
+
|
| 763 |
+
07:25.140 --> 07:26.840
|
| 764 |
+
puede ser por
|
| 765 |
+
ejemplo,
|
| 766 |
+
|
| 767 |
+
07:26.840 --> 07:28.440
|
| 768 |
+
hello,
|
| 769 |
+
|
| 770 |
+
07:28.440 --> 07:30.340
|
| 771 |
+
u otra cosa puede
|
| 772 |
+
ser,
|
| 773 |
+
|
| 774 |
+
07:30.340 --> 07:31.240
|
| 775 |
+
bye,
|
| 776 |
+
|
| 777 |
+
07:31.240 --> 07:33.540
|
| 778 |
+
son palabras
|
| 779 |
+
aleatorias.
|
| 780 |
+
|
| 781 |
+
07:33.540 --> 07:34.940
|
| 782 |
+
Despu茅s de
|
| 783 |
+
esto,
|
| 784 |
+
|
| 785 |
+
07:34.940 --> 07:37.140
|
| 786 |
+
lo que tengo que garantizar en esta
|
| 787 |
+
creaci贸n
|
| 788 |
+
|
| 789 |
+
07:37.140 --> 07:39.840
|
| 790 |
+
es que por supuesto no se repita alguna de
|
| 791 |
+
ellas.
|
| 792 |
+
|
| 793 |
+
07:39.840 --> 07:41.940
|
| 794 |
+
Entonces, por ejemplo, voy a
|
| 795 |
+
decir
|
| 796 |
+
|
| 797 |
+
07:41.940 --> 07:44.640
|
| 798 |
+
banana, la voy a
|
| 799 |
+
duplicar,
|
| 800 |
+
|
| 801 |
+
07:44.640 --> 07:46.740
|
| 802 |
+
y voy a colocar bye
|
| 803 |
+
tambi茅n
|
| 804 |
+
|
| 805 |
+
07:46.740 --> 07:49.540
|
| 806 |
+
otras dos veces, supongamos que est谩 as铆.
|
| 807 |
+
|
| 808 |
+
07:49.540 --> 07:50.340
|
| 809 |
+
Listo.
|
| 810 |
+
|
| 811 |
+
07:50.340 --> 07:51.940
|
| 812 |
+
驴Qu茅 vamos a hacer
|
| 813 |
+
ahora?
|
| 814 |
+
|
| 815 |
+
07:51.940 --> 07:54.240
|
| 816 |
+
Vamos a crear otra
|
| 817 |
+
variable
|
| 818 |
+
|
| 819 |
+
07:54.240 --> 07:56.240
|
| 820 |
+
en donde precisamente vamos a
|
| 821 |
+
revisar
|
| 822 |
+
|
| 823 |
+
07:56.240 --> 07:58.140
|
| 824 |
+
c贸mo funciona
|
| 825 |
+
reduce,
|
| 826 |
+
|
| 827 |
+
07:58.140 --> 07:59.940
|
| 828 |
+
驴para qu茅? Para que podamos
|
| 829 |
+
encontrar
|
| 830 |
+
|
| 831 |
+
07:59.940 --> 08:02.840
|
| 832 |
+
cu谩ntas veces se
|
| 833 |
+
repite
|
| 834 |
+
|
| 835 |
+
08:02.840 --> 08:04.440
|
| 836 |
+
alguna de estas
|
| 837 |
+
palabras.
|
| 838 |
+
|
| 839 |
+
08:04.440 --> 08:05.440
|
| 840 |
+
驴C贸mo lo
|
| 841 |
+
hacemos?
|
| 842 |
+
|
| 843 |
+
08:05.440 --> 08:07.540
|
| 844 |
+
Vamos a crear una variable por
|
| 845 |
+
ac谩
|
| 846 |
+
|
| 847 |
+
08:07.540 --> 08:10.140
|
| 848 |
+
que se llame, voy a crear un espacio,
|
| 849 |
+
|
| 850 |
+
08:10.140 --> 08:13.640
|
| 851 |
+
const word
|
| 852 |
+
frequency.
|
| 853 |
+
|
| 854 |
+
08:13.640 --> 08:15.040
|
| 855 |
+
Frequency.
|
| 856 |
+
|
| 857 |
+
08:15.040 --> 08:16.540
|
| 858 |
+
Vamos a hacer un
|
| 859 |
+
igual,
|
| 860 |
+
|
| 861 |
+
08:16.540 --> 08:19.140
|
| 862 |
+
y lo que hacemos es tomar nuestro array,
|
| 863 |
+
|
| 864 |
+
08:19.140 --> 08:20.840
|
| 865 |
+
decirle
|
| 866 |
+
reduce,
|
| 867 |
+
|
| 868 |
+
08:20.840 --> 08:22.840
|
| 869 |
+
y aqu铆 es donde
|
| 870 |
+
empieza
|
| 871 |
+
|
| 872 |
+
08:22.840 --> 08:25.240
|
| 873 |
+
todo el tema de la funci贸n que va por dentro.
|
| 874 |
+
|
| 875 |
+
08:25.240 --> 08:26.340
|
| 876 |
+
驴C贸mo lo vamos a
|
| 877 |
+
escribir?
|
| 878 |
+
|
| 879 |
+
08:26.340 --> 08:28.240
|
| 880 |
+
Entonces colocamos
|
| 881 |
+
nuevamente
|
| 882 |
+
|
| 883 |
+
08:28.240 --> 08:31.240
|
| 884 |
+
estos dos par谩metros, que es tanto el
|
| 885 |
+
acumulador
|
| 886 |
+
|
| 887 |
+
08:31.240 --> 08:33.740
|
| 888 |
+
como el valor
|
| 889 |
+
actual,
|
| 890 |
+
|
| 891 |
+
08:33.740 --> 08:36.840
|
| 892 |
+
y seguido de esto vamos a colocar un arrow
|
| 893 |
+
function
|
| 894 |
+
|
| 895 |
+
08:36.840 --> 08:38.840
|
| 896 |
+
y unas llaves para empezar a
|
| 897 |
+
escribir
|
| 898 |
+
|
| 899 |
+
08:38.840 --> 08:42.040
|
| 900 |
+
el cuerpo de esta funci贸n
|
| 901 |
+
aqu铆.
|
| 902 |
+
|
| 903 |
+
08:42.040 --> 08:44.040
|
| 904 |
+
Ahora lo que hacemos es
|
| 905 |
+
decir,
|
| 906 |
+
|
| 907 |
+
08:44.040 --> 08:47.140
|
| 908 |
+
ok, si el current
|
| 909 |
+
value,
|
| 910 |
+
|
| 911 |
+
08:47.140 --> 08:50.140
|
| 912 |
+
en este caso, si el current
|
| 913 |
+
value
|
| 914 |
+
|
| 915 |
+
08:50.140 --> 08:51.740
|
| 916 |
+
se
|
| 917 |
+
repite,
|
| 918 |
+
|
| 919 |
+
08:51.740 --> 08:54.140
|
| 920 |
+
lo que vamos a hacer es
|
| 921 |
+
acumularlo
|
| 922 |
+
|
| 923 |
+
08:54.140 --> 08:55.140
|
| 924 |
+
o
|
| 925 |
+
guardarlo.
|
| 926 |
+
|
| 927 |
+
08:55.140 --> 08:56.940
|
| 928 |
+
Entonces eso es lo que vamos a hacer.
|
| 929 |
+
|
| 930 |
+
08:56.940 --> 08:59.040
|
| 931 |
+
Mira que la primera
|
| 932 |
+
palabra
|
| 933 |
+
|
| 934 |
+
08:59.040 --> 09:01.440
|
| 935 |
+
o lo que empezamos a hacer fue
|
| 936 |
+
cuestionarnos
|
| 937 |
+
|
| 938 |
+
09:01.440 --> 09:03.740
|
| 939 |
+
si esta palabra
|
| 940 |
+
existe.
|
| 941 |
+
|
| 942 |
+
09:03.740 --> 09:05.740
|
| 943 |
+
Y ah铆 es donde llega la
|
| 944 |
+
magia,
|
| 945 |
+
|
| 946 |
+
09:05.740 --> 09:07.940
|
| 947 |
+
por supuesto, de los
|
| 948 |
+
condicionales.
|
| 949 |
+
|
| 950 |
+
09:07.940 --> 09:09.940
|
| 951 |
+
Entonces, 驴qu茅 vamos a hacer
|
| 952 |
+
ac谩?
|
| 953 |
+
|
| 954 |
+
09:09.940 --> 09:13.440
|
| 955 |
+
S铆, vamos a colocar
|
| 956 |
+
accumulator.
|
| 957 |
+
|
| 958 |
+
09:13.440 --> 09:15.040
|
| 959 |
+
驴En qu茅
|
| 960 |
+
posici贸n?
|
| 961 |
+
|
| 962 |
+
09:15.040 --> 09:17.540
|
| 963 |
+
En la posici贸n del current
|
| 964 |
+
value.
|
| 965 |
+
|
| 966 |
+
09:17.540 --> 09:19.740
|
| 967 |
+
En este caso,
|
| 968 |
+
驴existe?
|
| 969 |
+
|
| 970 |
+
09:19.740 --> 09:21.340
|
| 971 |
+
Que es como que, ah,
|
| 972 |
+
bueno,
|
| 973 |
+
|
| 974 |
+
09:21.340 --> 09:23.340
|
| 975 |
+
si viene por ac谩 Apple, 驴ya
|
| 976 |
+
existe?
|
| 977 |
+
|
| 978 |
+
09:23.340 --> 09:25.740
|
| 979 |
+
En este caso no, ser铆a como la primera
|
| 980 |
+
vez
|
| 981 |
+
|
| 982 |
+
09:25.740 --> 09:26.740
|
| 983 |
+
que llega
|
| 984 |
+
茅l,
|
| 985 |
+
|
| 986 |
+
09:26.740 --> 09:30.240
|
| 987 |
+
entonces entrar铆a a la otra parte del
|
| 988 |
+
condicional.
|
| 989 |
+
|
| 990 |
+
09:30.240 --> 09:32.240
|
| 991 |
+
Si no existe, que es
|
| 992 |
+
justamente
|
| 993 |
+
|
| 994 |
+
09:32.240 --> 09:34.240
|
| 995 |
+
cuando llegamos, por ejemplo, a Apple,
|
| 996 |
+
|
| 997 |
+
09:34.240 --> 09:35.940
|
| 998 |
+
lo que hacemos es
|
| 999 |
+
decirle
|
| 1000 |
+
|
| 1001 |
+
09:35.940 --> 09:37.740
|
| 1002 |
+
que este
|
| 1003 |
+
acumulador
|
| 1004 |
+
|
| 1005 |
+
09:37.740 --> 09:39.740
|
| 1006 |
+
en esta
|
| 1007 |
+
posici贸n
|
| 1008 |
+
|
| 1009 |
+
09:39.740 --> 09:41.740
|
| 1010 |
+
va a ser igual a qui茅n? A
|
| 1011 |
+
1.
|
| 1012 |
+
|
| 1013 |
+
09:41.740 --> 09:44.740
|
| 1014 |
+
Es decir que inmediatamente empecemos
|
| 1015 |
+
a
|
| 1016 |
+
|
| 1017 |
+
09:44.740 --> 09:47.240
|
| 1018 |
+
leer las palabras del
|
| 1019 |
+
array,
|
| 1020 |
+
|
| 1021 |
+
09:47.240 --> 09:50.540
|
| 1022 |
+
茅l va a empezar a decir si existe o no existe,
|
| 1023 |
+
|
| 1024 |
+
09:50.540 --> 09:53.540
|
| 1025 |
+
y si existe, va a ser algo, ya vamos a ver
|
| 1026 |
+
qu茅,
|
| 1027 |
+
|
| 1028 |
+
09:53.540 --> 09:57.040
|
| 1029 |
+
y si no, va a empezar a guardar un valor
|
| 1030 |
+
inicial,
|
| 1031 |
+
|
| 1032 |
+
09:57.040 --> 09:59.740
|
| 1033 |
+
que en este caso el valor inicial ser铆a 1.
|
| 1034 |
+
|
| 1035 |
+
09:59.740 --> 10:02.740
|
| 1036 |
+
Entonces, 驴Apple existe?
|
| 1037 |
+
No.
|
| 1038 |
+
|
| 1039 |
+
10:02.740 --> 10:05.240
|
| 1040 |
+
Como no existe, entonces vamos a
|
| 1041 |
+
guardar
|
| 1042 |
+
|
| 1043 |
+
10:05.240 --> 10:07.740
|
| 1044 |
+
su valor inicial, que ser铆a
|
| 1045 |
+
1.
|
| 1046 |
+
|
| 1047 |
+
10:07.740 --> 10:09.740
|
| 1048 |
+
En caso de que s铆
|
| 1049 |
+
exista,
|
| 1050 |
+
|
| 1051 |
+
10:09.740 --> 10:11.740
|
| 1052 |
+
ejemplo, vamos a
|
| 1053 |
+
banana,
|
| 1054 |
+
|
| 1055 |
+
10:11.740 --> 10:13.740
|
| 1056 |
+
banana entrar铆a primero de que no existe,
|
| 1057 |
+
|
| 1058 |
+
10:13.740 --> 10:16.240
|
| 1059 |
+
entonces le guardamos un valor
|
| 1060 |
+
1,
|
| 1061 |
+
|
| 1062 |
+
10:16.240 --> 10:18.240
|
| 1063 |
+
pero despu茅s vamos
|
| 1064 |
+
iterando,
|
| 1065 |
+
|
| 1066 |
+
10:18.240 --> 10:20.240
|
| 1067 |
+
y despu茅s con el tiempo nos
|
| 1068 |
+
encontramos
|
| 1069 |
+
|
| 1070 |
+
10:20.240 --> 10:21.740
|
| 1071 |
+
otra vez con
|
| 1072 |
+
banana,
|
| 1073 |
+
|
| 1074 |
+
10:21.740 --> 10:23.740
|
| 1075 |
+
y preguntamos,
|
| 1076 |
+
驴existe?
|
| 1077 |
+
|
| 1078 |
+
10:23.740 --> 10:25.740
|
| 1079 |
+
Y aqu铆 茅l va a decir, ah, s铆, que 茅l ya
|
| 1080 |
+
existe
|
| 1081 |
+
|
| 1082 |
+
10:25.740 --> 10:27.740
|
| 1083 |
+
porque ya me guardaron un valor por all谩,
|
| 1084 |
+
|
| 1085 |
+
10:27.740 --> 10:28.740
|
| 1086 |
+
que es
|
| 1087 |
+
1.
|
| 1088 |
+
|
| 1089 |
+
10:28.740 --> 10:30.740
|
| 1090 |
+
Si existe, en este
|
| 1091 |
+
caso,
|
| 1092 |
+
|
| 1093 |
+
10:30.740 --> 10:33.240
|
| 1094 |
+
lo que vamos a hacer es sumarle un 1,
|
| 1095 |
+
|
| 1096 |
+
10:33.240 --> 10:35.740
|
| 1097 |
+
o un valor, entonces en este caso
|
| 1098 |
+
ser铆a
|
| 1099 |
+
|
| 1100 |
+
10:35.740 --> 10:38.740
|
| 1101 |
+
volver a tomar el valor que ya tenemos,
|
| 1102 |
+
|
| 1103 |
+
10:38.740 --> 10:41.240
|
| 1104 |
+
y creo que se me fueron
|
| 1105 |
+
m谩s,
|
| 1106 |
+
|
| 1107 |
+
10:41.240 --> 10:43.240
|
| 1108 |
+
m谩s cositas ah铆,
|
| 1109 |
+
ser铆a,
|
| 1110 |
+
|
| 1111 |
+
10:43.240 --> 10:45.240
|
| 1112 |
+
si ya existe, 驴qu茅 vamos a
|
| 1113 |
+
hacer?
|
| 1114 |
+
|
| 1115 |
+
10:45.240 --> 10:48.240
|
| 1116 |
+
Vamos a sumarle un valor
|
| 1117 |
+
m谩s.
|
| 1118 |
+
|
| 1119 |
+
10:48.240 --> 10:50.740
|
| 1120 |
+
Entonces aqu铆 le estamos diciendo, ah,
|
| 1121 |
+
|
| 1122 |
+
10:50.740 --> 10:53.740
|
| 1123 |
+
est谩 el valor, agr茅gale otro valor, y fin.
|
| 1124 |
+
|
| 1125 |
+
10:53.740 --> 10:57.240
|
| 1126 |
+
Entonces aqu铆 se va a empezar a acumular
|
| 1127 |
+
precisamente.
|
| 1128 |
+
|
| 1129 |
+
10:57.240 --> 10:59.240
|
| 1130 |
+
Seguido de esto, lo que vamos a
|
| 1131 |
+
hacer
|
| 1132 |
+
|
| 1133 |
+
10:59.240 --> 11:01.240
|
| 1134 |
+
es retornar,
|
| 1135 |
+
驴qui茅n?
|
| 1136 |
+
|
| 1137 |
+
11:01.240 --> 11:02.740
|
| 1138 |
+
El
|
| 1139 |
+
acumulador.
|
| 1140 |
+
|
| 1141 |
+
11:02.740 --> 11:05.240
|
| 1142 |
+
Entonces voy a subir esto un poquito,
|
| 1143 |
+
|
| 1144 |
+
11:05.240 --> 11:07.740
|
| 1145 |
+
y lo que vamos a hacer ac谩 es
|
| 1146 |
+
decirle
|
| 1147 |
+
|
| 1148 |
+
11:07.740 --> 11:09.740
|
| 1149 |
+
que el valor inicial va a
|
| 1150 |
+
ser
|
| 1151 |
+
|
| 1152 |
+
11:09.740 --> 11:11.740
|
| 1153 |
+
un objeto vac铆o en este
|
| 1154 |
+
caso.
|
| 1155 |
+
|
| 1156 |
+
11:11.740 --> 11:13.740
|
| 1157 |
+
Y ahora lo que hacemos es
|
| 1158 |
+
colocar
|
| 1159 |
+
|
| 1160 |
+
11:13.740 --> 11:15.740
|
| 1161 |
+
un console.log, 驴de
|
| 1162 |
+
qui茅n?
|
| 1163 |
+
|
| 1164 |
+
11:15.740 --> 11:17.740
|
| 1165 |
+
De la frecuencia de la
|
| 1166 |
+
palabra.
|
| 1167 |
+
|
| 1168 |
+
11:17.740 --> 11:20.740
|
| 1169 |
+
Vamos a guardar, corremos nuestro c贸digo,
|
| 1170 |
+
|
| 1171 |
+
11:20.740 --> 11:22.740
|
| 1172 |
+
y aqu铆 ya vemos que
|
| 1173 |
+
tenemos
|
| 1174 |
+
|
| 1175 |
+
11:22.740 --> 11:24.740
|
| 1176 |
+
apple siendo
|
| 1177 |
+
1,
|
| 1178 |
+
|
| 1179 |
+
11:24.740 --> 11:26.740
|
| 1180 |
+
banana siendo
|
| 1181 |
+
2,
|
| 1182 |
+
|
| 1183 |
+
11:26.740 --> 11:28.740
|
| 1184 |
+
hello, 1, y bye,
|
| 1185 |
+
3.
|
| 1186 |
+
|
| 1187 |
+
11:28.740 --> 11:30.740
|
| 1188 |
+
Entonces 茅l ya nos hizo el
|
| 1189 |
+
conteo
|
| 1190 |
+
|
| 1191 |
+
11:30.740 --> 11:32.740
|
| 1192 |
+
para saber cu谩l es la
|
| 1193 |
+
frecuencia
|
| 1194 |
+
|
| 1195 |
+
11:32.740 --> 11:58.740
|
| 1196 |
+
de cada una de estas
|
| 1197 |
+
palabras.
|
| 1198 |
+
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/05-Resumen.html
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/05-clase-filter-reduce_e813ab75-e07c-4b5d-aad3-8bfc93813d7a.js
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
// Methods that iterate over an array.
|
| 2 |
+
// Methods that DO NOT modify the original array (Immutability).
|
| 3 |
+
|
| 4 |
+
// filter()
|
| 5 |
+
|
| 6 |
+
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
|
| 7 |
+
const evenNumbers = numbers.filter(number => number % 2 === 0)
|
| 8 |
+
|
| 9 |
+
console.log(numbers)
|
| 10 |
+
console.log(evenNumbers)
|
| 11 |
+
|
| 12 |
+
// reduce() 路 case 1
|
| 13 |
+
|
| 14 |
+
const numbersReduce = [1, 2, 3, 4, 5]
|
| 15 |
+
const sum = numbersReduce.reduce((accumulator, currentValue) => accumulator + currentValue, 0)
|
| 16 |
+
|
| 17 |
+
console.log(numbersReduce)
|
| 18 |
+
console.log(sum)
|
| 19 |
+
|
| 20 |
+
// reduce() 路 case 2
|
| 21 |
+
|
| 22 |
+
const words = ['apple', 'banana', 'hello', 'bye', 'banana', 'bye', 'bye']
|
| 23 |
+
|
| 24 |
+
const wordFrecuency = words.reduce((accumulator, currentValue) => {
|
| 25 |
+
if (accumulator[currentValue]) {
|
| 26 |
+
accumulator[currentValue]++
|
| 27 |
+
} else {
|
| 28 |
+
accumulator[currentValue] = 1
|
| 29 |
+
}
|
| 30 |
+
return accumulator
|
| 31 |
+
}, {})
|
| 32 |
+
|
| 33 |
+
console.log(wordFrecuency)
|
| 34 |
+
|
| 35 |
+
// Exercise: Passing Grade Average
|
| 36 |
+
|
| 37 |
+
const grades = [85, 92, 60, 78, 95, 66, 88, 50, 94]
|
| 38 |
+
|
| 39 |
+
const passingGrades = grades.filter(grade => grade >= 70)
|
| 40 |
+
|
| 41 |
+
const averagePassingGrade = passingGrades.reduce((sum, grade) => sum + grade, 0) / passingGrades.length
|
| 42 |
+
|
| 43 |
+
console.log('Original Grades: ', grades)
|
| 44 |
+
console.log('Passing Grades: ', passingGrades)
|
| 45 |
+
console.log('Average Passing Grade: ', averagePassingGrade)
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/06-Lecturas recomendadas.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
https://github.com/platzi/basico-js
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/06-M茅todos find y findIndex en JavaScript Uso y ejemplos pr谩cticos.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:2940840265012b55a25215a3f6cb63e52f76e7d08608bfe87c3080024e2b5049
|
| 3 |
+
size 19643282
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/06-M茅todos find y findIndex en JavaScript Uso y ejemplos pr谩cticos.vtt
ADDED
|
@@ -0,0 +1,311 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
WEBVTT
|
| 2 |
+
|
| 3 |
+
00:00.000 --> 00:03.400
|
| 4 |
+
En esta clase vamos a estar hablando de
|
| 5 |
+
dos m茅todos
|
| 6 |
+
|
| 7 |
+
00:03.400 --> 00:05.300
|
| 8 |
+
que no modifican nuestro
|
| 9 |
+
array,
|
| 10 |
+
|
| 11 |
+
00:05.300 --> 00:07.400
|
| 12 |
+
pero nos ayuda a encontrar
|
| 13 |
+
elementos
|
| 14 |
+
|
| 15 |
+
00:07.400 --> 00:09.400
|
| 16 |
+
y tambi茅n 铆ndices en un
|
| 17 |
+
array.
|
| 18 |
+
|
| 19 |
+
00:09.400 --> 00:12.200
|
| 20 |
+
Ellos son find y
|
| 21 |
+
findIndex.
|
| 22 |
+
|
| 23 |
+
00:12.200 --> 00:15.100
|
| 24 |
+
El primero de ellos justamente es
|
| 25 |
+
find
|
| 26 |
+
|
| 27 |
+
00:15.100 --> 00:17.800
|
| 28 |
+
y nos devuelve el primer
|
| 29 |
+
elemento
|
| 30 |
+
|
| 31 |
+
00:17.800 --> 00:19.900
|
| 32 |
+
que cumpla con una
|
| 33 |
+
condici贸n
|
| 34 |
+
|
| 35 |
+
00:19.900 --> 00:22.400
|
| 36 |
+
que le mandemos justamente en una funci贸n.
|
| 37 |
+
|
| 38 |
+
00:22.400 --> 00:23.900
|
| 39 |
+
Entonces, en este
|
| 40 |
+
caso,
|
| 41 |
+
|
| 42 |
+
00:23.900 --> 00:27.000
|
| 43 |
+
si tenemos un array que dice 5, 10, 15 y 20,
|
| 44 |
+
|
| 45 |
+
00:27.000 --> 00:30.000
|
| 46 |
+
y queremos el primer elemento que sea
|
| 47 |
+
mayor a 10,
|
| 48 |
+
|
| 49 |
+
00:30.000 --> 00:32.300
|
| 50 |
+
por ejemplo, nos va a devolver
|
| 51 |
+
15.
|
| 52 |
+
|
| 53 |
+
00:32.300 --> 00:35.500
|
| 54 |
+
Vamos a revisar c贸mo ser铆a esto en el c贸digo.
|
| 55 |
+
|
| 56 |
+
00:35.500 --> 00:37.500
|
| 57 |
+
En este caso, ser铆a lo
|
| 58 |
+
siguiente.
|
| 59 |
+
|
| 60 |
+
00:37.500 --> 00:39.500
|
| 61 |
+
Vamos a colocar que vamos a
|
| 62 |
+
encontrar
|
| 63 |
+
|
| 64 |
+
00:39.500 --> 00:44.500
|
| 65 |
+
el primer, first, number,
|
| 66 |
+
number,
|
| 67 |
+
|
| 68 |
+
00:44.500 --> 00:46.000
|
| 69 |
+
que sea mayor a
|
| 70 |
+
10.
|
| 71 |
+
|
| 72 |
+
00:46.000 --> 00:50.500
|
| 73 |
+
Entonces, greater than
|
| 74 |
+
10.
|
| 75 |
+
|
| 76 |
+
00:50.500 --> 00:54.000
|
| 77 |
+
Y este valor necesita, por supuesto,
|
| 78 |
+
|
| 79 |
+
00:54.000 --> 00:56.500
|
| 80 |
+
un array que vamos a crear por
|
| 81 |
+
ac谩.
|
| 82 |
+
|
| 83 |
+
00:56.500 --> 01:00.000
|
| 84 |
+
Y este array va a llamarse los m煤ltiplos,
|
| 85 |
+
|
| 86 |
+
01:00.000 --> 01:04.000
|
| 87 |
+
m煤ltiples of
|
| 88 |
+
5.
|
| 89 |
+
|
| 90 |
+
01:04.000 --> 01:06.000
|
| 91 |
+
M煤ltiplos de
|
| 92 |
+
5.
|
| 93 |
+
|
| 94 |
+
01:06.000 --> 01:11.000
|
| 95 |
+
Y ac谩 vamos a colocar 5, 10, 15 y 20.
|
| 96 |
+
|
| 97 |
+
01:11.000 --> 01:13.000
|
| 98 |
+
En este caso,
|
| 99 |
+
ac谩,
|
| 100 |
+
|
| 101 |
+
01:13.000 --> 01:16.500
|
| 102 |
+
para encontrar el primer valor que sea
|
| 103 |
+
mayor a 10,
|
| 104 |
+
|
| 105 |
+
01:16.500 --> 01:18.500
|
| 106 |
+
vamos a tomar nuestro
|
| 107 |
+
array,
|
| 108 |
+
|
| 109 |
+
01:18.500 --> 01:20.500
|
| 110 |
+
le vamos a decir
|
| 111 |
+
find,
|
| 112 |
+
|
| 113 |
+
01:20.500 --> 01:24.000
|
| 114 |
+
y dentro de find ir铆a la funci贸n con la
|
| 115 |
+
condici贸n.
|
| 116 |
+
|
| 117 |
+
01:24.000 --> 01:26.000
|
| 118 |
+
En este caso, 驴qu茅
|
| 119 |
+
necesitamos?
|
| 120 |
+
|
| 121 |
+
01:26.000 --> 01:30.000
|
| 122 |
+
Que este n煤mero, number, sea
|
| 123 |
+
qu茅?
|
| 124 |
+
|
| 125 |
+
01:30.000 --> 01:32.500
|
| 126 |
+
Sea mayor a
|
| 127 |
+
10.
|
| 128 |
+
|
| 129 |
+
01:32.500 --> 01:35.000
|
| 130 |
+
Entonces, vamos a colocar por ac谩 esto,
|
| 131 |
+
|
| 132 |
+
01:35.000 --> 01:37.500
|
| 133 |
+
y escribimos un
|
| 134 |
+
console.log,
|
| 135 |
+
|
| 136 |
+
01:37.500 --> 01:41.000
|
| 137 |
+
tanto de esta variable de
|
| 138 |
+
ac谩,
|
| 139 |
+
|
| 140 |
+
01:41.000 --> 01:43.000
|
| 141 |
+
vamos a copiarla, la
|
| 142 |
+
pegamos,
|
| 143 |
+
|
| 144 |
+
01:43.000 --> 01:46.000
|
| 145 |
+
y tambi茅n tomo esta variable y la pego.
|
| 146 |
+
|
| 147 |
+
01:46.000 --> 01:48.500
|
| 148 |
+
Voy a correr nuestro
|
| 149 |
+
programa,
|
| 150 |
+
|
| 151 |
+
01:48.500 --> 01:51.000
|
| 152 |
+
voy a colocar
|
| 153 |
+
node,
|
| 154 |
+
|
| 155 |
+
01:51.000 --> 01:53.500
|
| 156 |
+
luego colocamos
|
| 157 |
+
clase,
|
| 158 |
+
|
| 159 |
+
01:53.500 --> 01:56.500
|
| 160 |
+
find,
|
| 161 |
+
findIndex,
|
| 162 |
+
|
| 163 |
+
01:56.500 --> 01:58.000
|
| 164 |
+
y aqu铆 nos
|
| 165 |
+
sale.
|
| 166 |
+
|
| 167 |
+
01:58.000 --> 01:59.500
|
| 168 |
+
Primero, nuestro
|
| 169 |
+
array,
|
| 170 |
+
|
| 171 |
+
01:59.500 --> 02:02.500
|
| 172 |
+
es decir, que no ha sido mutado, no ha
|
| 173 |
+
sido modificado,
|
| 174 |
+
|
| 175 |
+
02:02.500 --> 02:04.500
|
| 176 |
+
y segundo, tenemos, por
|
| 177 |
+
supuesto,
|
| 178 |
+
|
| 179 |
+
02:04.500 --> 02:07.000
|
| 180 |
+
el resultado de nuestro
|
| 181 |
+
find.
|
| 182 |
+
|
| 183 |
+
02:07.000 --> 02:11.500
|
| 184 |
+
Seguido, vamos a ver nuestro otro m茅todo,
|
| 185 |
+
|
| 186 |
+
02:11.500 --> 02:13.500
|
| 187 |
+
que en este caso ser铆a
|
| 188 |
+
findIndex.
|
| 189 |
+
|
| 190 |
+
02:13.500 --> 02:15.500
|
| 191 |
+
驴Qu茅 va a hacer
|
| 192 |
+
findIndex?
|
| 193 |
+
|
| 194 |
+
02:15.500 --> 02:17.500
|
| 195 |
+
Va a tomar justamente el
|
| 196 |
+
array
|
| 197 |
+
|
| 198 |
+
02:17.500 --> 02:22.000
|
| 199 |
+
y nos va a devolver el 铆ndice del primer
|
| 200 |
+
elemento del array,
|
| 201 |
+
|
| 202 |
+
02:22.000 --> 02:24.500
|
| 203 |
+
que tambi茅n satisfaga esa condici贸n.
|
| 204 |
+
|
| 205 |
+
02:24.500 --> 02:27.500
|
| 206 |
+
Entonces, vamos a hacer eso aqu铆 en
|
| 207 |
+
nuestro c贸digo.
|
| 208 |
+
|
| 209 |
+
02:27.500 --> 02:30.000
|
| 210 |
+
Entonces, vamos a colocar findIndex,
|
| 211 |
+
|
| 212 |
+
02:30.000 --> 02:32.500
|
| 213 |
+
y vamos a crear otro
|
| 214 |
+
array.
|
| 215 |
+
|
| 216 |
+
02:32.500 --> 02:34.500
|
| 217 |
+
En este caso es
|
| 218 |
+
const,
|
| 219 |
+
|
| 220 |
+
02:34.500 --> 02:39.500
|
| 221 |
+
random, voy a colocar un array de n煤meros
|
| 222 |
+
aleatorios,
|
| 223 |
+
|
| 224 |
+
02:39.500 --> 02:42.000
|
| 225 |
+
entonces,
|
| 226 |
+
randomNumbers,
|
| 227 |
+
|
| 228 |
+
02:42.000 --> 02:44.000
|
| 229 |
+
y aqu铆 voy a crear mi
|
| 230 |
+
array,
|
| 231 |
+
|
| 232 |
+
02:44.000 --> 02:46.000
|
| 233 |
+
que en este caso ser铆a, por ejemplo,
|
| 234 |
+
|
| 235 |
+
02:46.000 --> 02:52.000
|
| 236 |
+
6, 14, 27, 56 y
|
| 237 |
+
40,
|
| 238 |
+
|
| 239 |
+
02:52.000 --> 02:54.500
|
| 240 |
+
que es lo mismo que tenemos aqu铆 en
|
| 241 |
+
nuestro slide.
|
| 242 |
+
|
| 243 |
+
02:54.500 --> 02:57.500
|
| 244 |
+
Y ahora, lo que hacemos es colocar const,
|
| 245 |
+
|
| 246 |
+
02:57.500 --> 03:00.000
|
| 247 |
+
el 铆ndex, 驴de
|
| 248 |
+
qui茅n?
|
| 249 |
+
|
| 250 |
+
03:00.000 --> 03:02.500
|
| 251 |
+
De ese n煤mero que
|
| 252 |
+
queremos,
|
| 253 |
+
|
| 254 |
+
03:02.500 --> 03:05.500
|
| 255 |
+
y number, esto va a ser igual a
|
| 256 |
+
qui茅n?
|
| 257 |
+
|
| 258 |
+
03:05.500 --> 03:08.500
|
| 259 |
+
A randomNumber,
|
| 260 |
+
punto,
|
| 261 |
+
|
| 262 |
+
03:08.500 --> 03:12.000
|
| 263 |
+
findIndex,
|
| 264 |
+
findIndex.
|
| 265 |
+
|
| 266 |
+
03:12.000 --> 03:14.500
|
| 267 |
+
驴De qui茅n? De alg煤n
|
| 268 |
+
n煤mero.
|
| 269 |
+
|
| 270 |
+
03:14.500 --> 03:18.000
|
| 271 |
+
Vamos a colocar, por ejemplo, number,
|
| 272 |
+
que sea mayor,
|
| 273 |
+
|
| 274 |
+
03:18.000 --> 03:23.000
|
| 275 |
+
en este caso, number mayor a 50, por ejemplo.
|
| 276 |
+
|
| 277 |
+
03:23.000 --> 03:27.000
|
| 278 |
+
Entonces, vamos a colocar de nuevo los dos
|
| 279 |
+
console.log,
|
| 280 |
+
|
| 281 |
+
03:27.000 --> 03:29.500
|
| 282 |
+
voy a copiarme esos que tenemos por ac谩,
|
| 283 |
+
|
| 284 |
+
03:29.500 --> 03:33.500
|
| 285 |
+
randomNumber y el
|
| 286 |
+
indexNumber.
|
| 287 |
+
|
| 288 |
+
03:33.500 --> 03:36.500
|
| 289 |
+
Vamos a correr de nuevo nuestro programa,
|
| 290 |
+
|
| 291 |
+
03:36.500 --> 03:39.500
|
| 292 |
+
y aqu铆 tenemos nuestro array original,
|
| 293 |
+
|
| 294 |
+
03:39.500 --> 03:42.500
|
| 295 |
+
y adicional, tenemos el 铆ndex del primer
|
| 296 |
+
elemento
|
| 297 |
+
|
| 298 |
+
03:42.500 --> 03:44.500
|
| 299 |
+
que cumple con esta
|
| 300 |
+
condici贸n,
|
| 301 |
+
|
| 302 |
+
03:44.500 --> 03:46.500
|
| 303 |
+
el primer elemento que es, por supuesto,
|
| 304 |
+
|
| 305 |
+
03:46.500 --> 03:48.500
|
| 306 |
+
mayor a 50 de
|
| 307 |
+
56,
|
| 308 |
+
|
| 309 |
+
03:48.500 --> 04:12.500
|
| 310 |
+
y vemos que su 铆ndex es 0, 1, 2 y 3.
|
| 311 |
+
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/06-Resumen.html
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/06-clase-find-findindex_ec26c6f8-de53-4d67-8a48-801ff513a78b.js
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
// Methods that iterate over an array.
|
| 2 |
+
// Methods that DO NOT modify the original array (Immutability).
|
| 3 |
+
|
| 4 |
+
// find()
|
| 5 |
+
|
| 6 |
+
const multipleOf5 = [5, 10, 15, 20]
|
| 7 |
+
const firstNumberGreaterThan10 = multipleOf5.find(number => number > 10)
|
| 8 |
+
|
| 9 |
+
console.log(multipleOf5)
|
| 10 |
+
console.log(firstNumberGreaterThan10)
|
| 11 |
+
|
| 12 |
+
// findIndex()
|
| 13 |
+
|
| 14 |
+
const randomNumber = [6, 14, 27, 56, 40]
|
| 15 |
+
const indexNumber = randomNumber.findIndex(number => number > 50)
|
| 16 |
+
|
| 17 |
+
console.log(randomNumber)
|
| 18 |
+
console.log(indexNumber)
|
| 19 |
+
|
| 20 |
+
// Exercise: Raffle Winner Verification Program
|
| 21 |
+
|
| 22 |
+
const winningParticipants = [
|
| 23 |
+
{ id: 1, name: 'Jennifer', ticketNumber: 001 },
|
| 24 |
+
{ id: 8, name: 'Michael', ticketNumber: 008 },
|
| 25 |
+
{ id: 15, name: 'Emily', ticketNumber: 015 },
|
| 26 |
+
{ id: 47, name: 'Charlie', ticketNumber: 047 }
|
| 27 |
+
]
|
| 28 |
+
|
| 29 |
+
function findWinnerByName (name) {
|
| 30 |
+
const winner = winningParticipants.find(participants => participants.name === name)
|
| 31 |
+
return winner || 'No winner found with that name.'
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
function findIndexWinnerByTicket (ticketNumber) {
|
| 35 |
+
const index = winningParticipants.findIndex(participants => participants.ticketNumber === ticketNumber)
|
| 36 |
+
return index !== -1 ? index : 'No winner found with that ticket number.'
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
function displayWinnerInformation (winner) {
|
| 40 |
+
if (winner !== undefined && winner != null && winner !== 'No winner found with that name.') {
|
| 41 |
+
console.log('Winner information: ', winner)
|
| 42 |
+
} else {
|
| 43 |
+
console.log('No winner found.')
|
| 44 |
+
}
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
const winnerByName = findWinnerByName('Emily')
|
| 48 |
+
const indexWinnerByTicket = findIndexWinnerByTicket(008)
|
| 49 |
+
|
| 50 |
+
displayWinnerInformation(winnerByName)
|
| 51 |
+
console.log('Index of Winner by Ticket Number: ', indexWinnerByTicket)
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/07-Lecturas recomendadas.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
https://github.com/platzi/basico-js
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/07-Resumen.html
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/07-Uso del m茅todo slice para extraer porciones de un array en JavaScript.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:d886bbe5c404351984dbb168c48f0bf0b800a84dcbf87b8a8b415edf292cb12e
|
| 3 |
+
size 29554197
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/07-Uso del m茅todo slice para extraer porciones de un array en JavaScript.vtt
ADDED
|
@@ -0,0 +1,362 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
WEBVTT
|
| 2 |
+
|
| 3 |
+
00:00.000 --> 00:04.280
|
| 4 |
+
驴Qu茅 pasar铆a si nosotros quisi茅ramos tomar
|
| 5 |
+
solo la porci贸n
|
| 6 |
+
|
| 7 |
+
00:04.280 --> 00:07.040
|
| 8 |
+
o una peque帽a parte de un
|
| 9 |
+
array?
|
| 10 |
+
|
| 11 |
+
00:07.040 --> 00:10.800
|
| 12 |
+
Pues bien, para ello podemos utilizar el
|
| 13 |
+
m茅todo slice,
|
| 14 |
+
|
| 15 |
+
00:10.800 --> 00:13.920
|
| 16 |
+
que nos va a permitir justamente tomar una
|
| 17 |
+
porci贸n,
|
| 18 |
+
|
| 19 |
+
00:13.920 --> 00:17.360
|
| 20 |
+
as铆 como estamos viendo en este ejemplo de
|
| 21 |
+
ac谩, de un array.
|
| 22 |
+
|
| 23 |
+
00:17.360 --> 00:19.920
|
| 24 |
+
Entonces tenemos un array que en este
|
| 25 |
+
caso
|
| 26 |
+
|
| 27 |
+
00:19.920 --> 00:22.080
|
| 28 |
+
tiene como diferentes tipos de juegos,
|
| 29 |
+
|
| 30 |
+
00:22.080 --> 00:25.440
|
| 31 |
+
y si nosotros solamente quisi茅ramos,
|
| 32 |
+
por ejemplo,
|
| 33 |
+
|
| 34 |
+
00:25.440 --> 00:28.360
|
| 35 |
+
desde ac谩 hasta
|
| 36 |
+
ac谩,
|
| 37 |
+
|
| 38 |
+
00:28.360 --> 00:31.800
|
| 39 |
+
pues lo podemos hacer justamente con slice.
|
| 40 |
+
|
| 41 |
+
00:31.800 --> 00:34.360
|
| 42 |
+
驴C贸mo lo vamos a utilizar en el
|
| 43 |
+
c贸digo?
|
| 44 |
+
|
| 45 |
+
00:34.360 --> 00:37.040
|
| 46 |
+
Vamos a colocar, por ejemplo, slice,
|
| 47 |
+
|
| 48 |
+
00:37.040 --> 00:39.880
|
| 49 |
+
y seguido lo que vamos a colocar es un array,
|
| 50 |
+
|
| 51 |
+
00:39.880 --> 00:43.080
|
| 52 |
+
vamos a colocar un array, por ejemplo,
|
| 53 |
+
de animales,
|
| 54 |
+
|
| 55 |
+
00:43.080 --> 00:45.440
|
| 56 |
+
y este va a contener, por
|
| 57 |
+
ejemplo,
|
| 58 |
+
|
| 59 |
+
00:45.440 --> 00:49.960
|
| 60 |
+
vamos a colocar hormiga, vamos a colocar
|
| 61 |
+
pison,
|
| 62 |
+
|
| 63 |
+
00:49.960 --> 00:53.840
|
| 64 |
+
vamos a colocar diferentes tipos de animales,
|
| 65 |
+
camel,
|
| 66 |
+
|
| 67 |
+
00:53.840 --> 01:00.080
|
| 68 |
+
vamos a colocar un pato y coloquemos un
|
| 69 |
+
elefante.
|
| 70 |
+
|
| 71 |
+
01:00.080 --> 01:01.360
|
| 72 |
+
Elefante.
|
| 73 |
+
|
| 74 |
+
01:01.360 --> 01:02.400
|
| 75 |
+
Listo.
|
| 76 |
+
|
| 77 |
+
01:02.400 --> 01:05.920
|
| 78 |
+
Teniendo esos animales, 驴qu茅 pasar铆a si
|
| 79 |
+
empezamos nosotros
|
| 80 |
+
|
| 81 |
+
01:05.920 --> 01:09.880
|
| 82 |
+
a querer solamente fracciones de esos
|
| 83 |
+
animales, no todos?
|
| 84 |
+
|
| 85 |
+
01:09.880 --> 01:13.600
|
| 86 |
+
Para ello, entonces, utilizamos nuestro
|
| 87 |
+
console.log,
|
| 88 |
+
|
| 89 |
+
01:13.600 --> 01:18.160
|
| 90 |
+
vamos a empezar a revisar c贸mo funciona
|
| 91 |
+
este m茅todo de slice.
|
| 92 |
+
|
| 93 |
+
01:18.160 --> 01:23.360
|
| 94 |
+
Entonces colocamos.slice y debemos pasarle 1,
|
| 95 |
+
|
| 96 |
+
01:23.360 --> 01:25.720
|
| 97 |
+
0, 1 o 2
|
| 98 |
+
par谩metros.
|
| 99 |
+
|
| 100 |
+
01:25.720 --> 01:28.760
|
| 101 |
+
Revisemos c贸mo ser铆a con un solo par谩metro.
|
| 102 |
+
|
| 103 |
+
01:28.760 --> 01:32.600
|
| 104 |
+
En este caso, si le pasamos el n煤mero 2,
|
| 105 |
+
|
| 106 |
+
01:32.600 --> 01:36.880
|
| 107 |
+
茅l va a tomarlo como si fuera el 铆ndice de
|
| 108 |
+
el array
|
| 109 |
+
|
| 110 |
+
01:36.880 --> 01:40.360
|
| 111 |
+
desde el valor que nosotros queremos tomar.
|
| 112 |
+
|
| 113 |
+
01:40.360 --> 01:43.600
|
| 114 |
+
Por ejemplo, si decimos 2, en este caso lo
|
| 115 |
+
que estamos
|
| 116 |
+
|
| 117 |
+
01:43.600 --> 01:48.000
|
| 118 |
+
diciendo es que queremos solamente desde
|
| 119 |
+
la posici贸n 2,
|
| 120 |
+
|
| 121 |
+
01:48.000 --> 01:51.280
|
| 122 |
+
es decir, desde el camello hasta el elefante.
|
| 123 |
+
|
| 124 |
+
01:51.280 --> 01:52.200
|
| 125 |
+
Vamos a
|
| 126 |
+
revisarlo.
|
| 127 |
+
|
| 128 |
+
01:52.200 --> 01:54.480
|
| 129 |
+
Corramos nuestro c贸digo,
|
| 130 |
+
note.
|
| 131 |
+
|
| 132 |
+
01:57.920 --> 02:02.040
|
| 133 |
+
Y aqu铆 vemos justamente esa porci贸n o ese
|
| 134 |
+
fragmento del
|
| 135 |
+
|
| 136 |
+
02:02.040 --> 02:05.840
|
| 137 |
+
array desde la posici贸n n煤mero
|
| 138 |
+
2.
|
| 139 |
+
|
| 140 |
+
02:05.840 --> 02:09.640
|
| 141 |
+
Ahora, 驴qu茅 pasar铆a si quisi茅ramos decirle
|
| 142 |
+
que desde
|
| 143 |
+
|
| 144 |
+
02:09.640 --> 02:14.560
|
| 145 |
+
la posici贸n 2 hasta el pato que tenemos
|
| 146 |
+
ac谩?
|
| 147 |
+
|
| 148 |
+
02:14.560 --> 02:19.720
|
| 149 |
+
Le decimos 0, 1, 2, 3, pero en este caso
|
| 150 |
+
debemos agregarle una
|
| 151 |
+
|
| 152 |
+
02:19.720 --> 02:23.200
|
| 153 |
+
posici贸n m谩s, es decir, la posici贸n n煤mero 4.
|
| 154 |
+
|
| 155 |
+
02:23.200 --> 02:24.120
|
| 156 |
+
驴Por
|
| 157 |
+
qu茅?
|
| 158 |
+
|
| 159 |
+
02:24.120 --> 02:28.720
|
| 160 |
+
Porque 茅l no tiene el valor final incluido.
|
| 161 |
+
|
| 162 |
+
02:28.720 --> 02:31.440
|
| 163 |
+
Entonces, 茅l lo que hace es decir, ah, mira,
|
| 164 |
+
|
| 165 |
+
02:31.440 --> 02:34.520
|
| 166 |
+
驴quieres una porci贸n desde la 2 hasta la
|
| 167 |
+
4?
|
| 168 |
+
|
| 169 |
+
02:34.520 --> 02:39.120
|
| 170 |
+
Bueno, yo te la voy a dar, pero en mi caso
|
| 171 |
+
va a ser 0, 1,
|
| 172 |
+
|
| 173 |
+
02:39.120 --> 02:45.080
|
| 174 |
+
2 desde camello hasta el 3, es decir,
|
| 175 |
+
hasta 4 menos 1.
|
| 176 |
+
|
| 177 |
+
02:45.080 --> 02:48.480
|
| 178 |
+
Vamos a correr nuestro c贸digo para revisarlo.
|
| 179 |
+
|
| 180 |
+
02:48.480 --> 02:51.360
|
| 181 |
+
Ac谩 tenemos, en efecto, nuestra porci贸n,
|
| 182 |
+
|
| 183 |
+
02:51.360 --> 02:55.040
|
| 184 |
+
pero esa porci贸n solamente es de la
|
| 185 |
+
posici贸n 2 y de la posici贸n
|
| 186 |
+
|
| 187 |
+
02:55.040 --> 02:56.360
|
| 188 |
+
n煤mero
|
| 189 |
+
3.
|
| 190 |
+
|
| 191 |
+
02:56.360 --> 02:59.640
|
| 192 |
+
Revis茅moslo con otro valor que tengamos.
|
| 193 |
+
|
| 194 |
+
02:59.640 --> 03:02.680
|
| 195 |
+
Supongamos que ahora s铆 queremos incluir
|
| 196 |
+
el elefante.
|
| 197 |
+
|
| 198 |
+
03:02.680 --> 03:06.240
|
| 199 |
+
Entonces, en este caso, lo que hacemos es
|
| 200 |
+
decir, por ejemplo,
|
| 201 |
+
|
| 202 |
+
03:06.240 --> 03:10.240
|
| 203 |
+
cambiamos este 铆ndice por el 1, que
|
| 204 |
+
empieza desde Bison.
|
| 205 |
+
|
| 206 |
+
03:10.240 --> 03:13.000
|
| 207 |
+
Y aqu铆 le colocamos la posici贸n n煤mero 5,
|
| 208 |
+
|
| 209 |
+
03:13.000 --> 03:17.080
|
| 210 |
+
que en este caso ser铆a 1, 2, 3, 4, 5.
|
| 211 |
+
|
| 212 |
+
03:17.080 --> 03:19.800
|
| 213 |
+
Y hoy podemos poner, por ejemplo, 6.
|
| 214 |
+
|
| 215 |
+
03:19.800 --> 03:21.160
|
| 216 |
+
Vamos a
|
| 217 |
+
guardar.
|
| 218 |
+
|
| 219 |
+
03:21.160 --> 03:22.720
|
| 220 |
+
Corremos nuestro
|
| 221 |
+
c贸digo.
|
| 222 |
+
|
| 223 |
+
03:22.720 --> 03:26.360
|
| 224 |
+
Y en este caso nos sale Bison, Camel,
|
| 225 |
+
Duck y Elefante.
|
| 226 |
+
|
| 227 |
+
03:26.360 --> 03:30.960
|
| 228 |
+
Entonces, ah铆 s铆 ya nos incluye justamente
|
| 229 |
+
este elefante.
|
| 230 |
+
|
| 231 |
+
03:30.960 --> 03:34.240
|
| 232 |
+
驴Qu茅 pasa si nosotros quisi茅ramos ahora,
|
| 233 |
+
|
| 234 |
+
03:34.240 --> 03:36.520
|
| 235 |
+
como empezar a contar de atr谩s para
|
| 236 |
+
adelante?
|
| 237 |
+
|
| 238 |
+
03:36.520 --> 03:39.800
|
| 239 |
+
Supongamos que tenemos un mont贸n de
|
| 240 |
+
valores y solamente
|
| 241 |
+
|
| 242 |
+
03:39.800 --> 03:41.400
|
| 243 |
+
queremos los dos
|
| 244 |
+
煤ltimos.
|
| 245 |
+
|
| 246 |
+
03:41.400 --> 03:44.400
|
| 247 |
+
驴C贸mo nos vamos a poner a contar un mont贸n
|
| 248 |
+
de posiciones?
|
| 249 |
+
|
| 250 |
+
03:44.400 --> 03:49.240
|
| 251 |
+
Bueno, para ese caso, lo que hace Slice es
|
| 252 |
+
permitirnos tambi茅n
|
| 253 |
+
|
| 254 |
+
03:49.240 --> 03:51.280
|
| 255 |
+
utilizar los n煤meros
|
| 256 |
+
negativos.
|
| 257 |
+
|
| 258 |
+
03:51.280 --> 03:54.840
|
| 259 |
+
Entonces, podemos utilizar, por ejemplo,
|
| 260 |
+
el menos 2.
|
| 261 |
+
|
| 262 |
+
03:54.840 --> 03:58.640
|
| 263 |
+
Y 茅l lo que hace es contar Elefante como
|
| 264 |
+
si fuera menos 1.
|
| 265 |
+
|
| 266 |
+
03:58.640 --> 04:01.080
|
| 267 |
+
Es decir, se est谩 empezando a devolver.
|
| 268 |
+
|
| 269 |
+
04:01.080 --> 04:05.440
|
| 270 |
+
Y toma el Pato como si fuera la posici贸n
|
| 271 |
+
n煤mero menos 2.
|
| 272 |
+
|
| 273 |
+
04:05.440 --> 04:10.400
|
| 274 |
+
Y nos da esta 煤ltima fracci贸n de este array.
|
| 275 |
+
|
| 276 |
+
04:10.400 --> 04:12.560
|
| 277 |
+
Si nosotros quisi茅ramos, por ejemplo,
|
| 278 |
+
|
| 279 |
+
04:12.560 --> 04:17.000
|
| 280 |
+
empezar por un valor y terminar por alg煤n
|
| 281 |
+
n煤mero del final,
|
| 282 |
+
|
| 283 |
+
04:17.000 --> 04:18.200
|
| 284 |
+
tambi茅n se
|
| 285 |
+
puede.
|
| 286 |
+
|
| 287 |
+
04:18.200 --> 04:21.840
|
| 288 |
+
Es decir, podemos decirle que empiece desde 0,
|
| 289 |
+
1, 2,
|
| 290 |
+
|
| 291 |
+
04:21.840 --> 04:24.240
|
| 292 |
+
pero que termine en la posici贸n menos 1.
|
| 293 |
+
|
| 294 |
+
04:24.240 --> 04:28.040
|
| 295 |
+
Entonces, 茅l tambi茅n nos hace caso en este
|
| 296 |
+
sentido y nos da
|
| 297 |
+
|
| 298 |
+
04:28.040 --> 04:32.600
|
| 299 |
+
este fragmento del array que es Camel y es
|
| 300 |
+
Duck, que es este.
|
| 301 |
+
|
| 302 |
+
04:32.600 --> 04:36.080
|
| 303 |
+
Y este recordemos que el final no lo cuenta.
|
| 304 |
+
|
| 305 |
+
04:36.080 --> 04:42.120
|
| 306 |
+
Y ya por 煤ltimo, tambi茅n podemos colocar
|
| 307 |
+
un console.log de
|
| 308 |
+
|
| 309 |
+
04:42.120 --> 04:44.600
|
| 310 |
+
lo que har铆a Slice
|
| 311 |
+
solito.
|
| 312 |
+
|
| 313 |
+
04:44.600 --> 04:48.080
|
| 314 |
+
Es decir, sin ning煤n tipo de par谩metro.
|
| 315 |
+
|
| 316 |
+
04:48.080 --> 04:50.280
|
| 317 |
+
Entonces, vamos a correr nuestro c贸digo.
|
| 318 |
+
|
| 319 |
+
04:50.280 --> 04:53.360
|
| 320 |
+
Y aqu铆 vemos que 茅l no har铆a absolutamente
|
| 321 |
+
nada.
|
| 322 |
+
|
| 323 |
+
04:53.360 --> 04:57.320
|
| 324 |
+
Nos est谩 devolviendo nuestro array original.
|
| 325 |
+
|
| 326 |
+
04:57.320 --> 05:01.640
|
| 327 |
+
Y en este caso, tambi茅n vemos que este
|
| 328 |
+
m茅todo como tal no nos
|
| 329 |
+
|
| 330 |
+
05:01.640 --> 05:03.920
|
| 331 |
+
modifica este array
|
| 332 |
+
original.
|
| 333 |
+
|
| 334 |
+
05:03.920 --> 05:07.040
|
| 335 |
+
Y por eso, pudimos tambi茅n colocar varios
|
| 336 |
+
console.log
|
| 337 |
+
|
| 338 |
+
05:07.040 --> 05:10.040
|
| 339 |
+
utilizando este m茅todo, precisamente por
|
| 340 |
+
la
|
| 341 |
+
|
| 342 |
+
05:10.040 --> 05:11.040
|
| 343 |
+
inmutabilidad.
|
| 344 |
+
|
| 345 |
+
05:11.040 --> 05:13.920
|
| 346 |
+
Entonces, recordemos que podemos utilizar 0,
|
| 347 |
+
|
| 348 |
+
05:13.920 --> 05:16.880
|
| 349 |
+
que en este caso es para que nos devuelva
|
| 350 |
+
todo el array.
|
| 351 |
+
|
| 352 |
+
05:16.880 --> 05:21.160
|
| 353 |
+
Y tambi茅n podemos utilizar un solo
|
| 354 |
+
par谩metro y dos
|
| 355 |
+
|
| 356 |
+
05:21.160 --> 05:25.120
|
| 357 |
+
par谩metros, que tambi茅n pueden ser desde
|
| 358 |
+
comenzar el array,
|
| 359 |
+
|
| 360 |
+
05:25.120 --> 05:42.160
|
| 361 |
+
como tambi茅n desde el final de nuestro array.
|
| 362 |
+
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/07-clase-slice_534b3124-8beb-4455-8f09-12c56b9174b6.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
// slice()
|
| 2 |
+
|
| 3 |
+
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant']
|
| 4 |
+
|
| 5 |
+
console.log(animals.slice(2))
|
| 6 |
+
console.log(animals.slice(2, 4))
|
| 7 |
+
console.log(animals.slice(1, 6))
|
| 8 |
+
console.log(animals.slice(-2))
|
| 9 |
+
console.log(animals.slice(2, -1))
|
| 10 |
+
console.log(animals.slice())
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/08-Lecturas recomendadas.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
https://github.com/platzi/basico-js
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/08-Resumen.html
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/08-Uso del Spread Operator en JavaScript Copia Combinaci贸n y M谩s.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:485fe2b55cd4965cf823a150bab6e333fe956f51fd62017376970d851e8beb65
|
| 3 |
+
size 40113955
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/08-Uso del Spread Operator en JavaScript Copia Combinaci贸n y M谩s.vtt
ADDED
|
@@ -0,0 +1,462 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
WEBVTT
|
| 2 |
+
|
| 3 |
+
00:00.000 --> 00:03.680
|
| 4 |
+
En esta clase vamos a estar hablando sobre
|
| 5 |
+
Spread Operator
|
| 6 |
+
|
| 7 |
+
00:03.680 --> 00:07.760
|
| 8 |
+
y tambi茅n todas las funcionalidades que
|
| 9 |
+
podemos hacer con este operador.
|
| 10 |
+
|
| 11 |
+
00:07.760 --> 00:11.840
|
| 12 |
+
El primero de ellos justamente es la copia
|
| 13 |
+
de un array,
|
| 14 |
+
|
| 15 |
+
00:11.840 --> 00:14.120
|
| 16 |
+
as铆 como estamos viendo aqu铆 en el documento.
|
| 17 |
+
|
| 18 |
+
00:14.120 --> 00:16.560
|
| 19 |
+
Podemos tener, por ejemplo, un
|
| 20 |
+
array
|
| 21 |
+
|
| 22 |
+
00:16.560 --> 00:21.120
|
| 23 |
+
y seguido, si nosotros queremos obtener
|
| 24 |
+
una copia de este array,
|
| 25 |
+
|
| 26 |
+
00:21.120 --> 00:23.960
|
| 27 |
+
lo podemos hacer con Spread Operator.
|
| 28 |
+
|
| 29 |
+
00:23.960 --> 00:26.440
|
| 30 |
+
Entonces, escribamos ac谩, por ejemplo,
|
| 31 |
+
|
| 32 |
+
00:26.440 --> 00:29.320
|
| 33 |
+
copying an
|
| 34 |
+
array.
|
| 35 |
+
|
| 36 |
+
00:29.320 --> 00:32.840
|
| 37 |
+
Aqu铆 lo que hacemos es decir, vamos a
|
| 38 |
+
tener un array,
|
| 39 |
+
|
| 40 |
+
00:32.840 --> 00:36.360
|
| 41 |
+
en este caso vamos a decir que es el array
|
| 42 |
+
original,
|
| 43 |
+
|
| 44 |
+
00:36.360 --> 00:38.880
|
| 45 |
+
original
|
| 46 |
+
array,
|
| 47 |
+
|
| 48 |
+
00:38.880 --> 00:42.040
|
| 49 |
+
y aqu铆 vamos a colocarle una serie de n煤meros,
|
| 50 |
+
|
| 51 |
+
00:42.040 --> 00:45.400
|
| 52 |
+
puede ser, por ejemplo, 1, 2, 3, 4 y 5.
|
| 53 |
+
|
| 54 |
+
00:45.400 --> 00:49.920
|
| 55 |
+
Y seguido, lo que vamos a hacer es crear
|
| 56 |
+
una copia de ese array.
|
| 57 |
+
|
| 58 |
+
00:49.920 --> 00:54.000
|
| 59 |
+
Entonces, vamos a decir, el array que fue
|
| 60 |
+
copiado,
|
| 61 |
+
|
| 62 |
+
00:54.000 --> 00:57.240
|
| 63 |
+
la copia, podemos colocarlo en presente,
|
| 64 |
+
|
| 65 |
+
00:57.240 --> 01:01.160
|
| 66 |
+
copying of an
|
| 67 |
+
array.
|
| 68 |
+
|
| 69 |
+
01:01.160 --> 01:01.660
|
| 70 |
+
Listo.
|
| 71 |
+
|
| 72 |
+
01:01.660 --> 01:05.560
|
| 73 |
+
Y aqu铆 nos quedar铆a como, podr铆amos
|
| 74 |
+
colocar un array,
|
| 75 |
+
|
| 76 |
+
01:05.560 --> 01:08.800
|
| 77 |
+
en este caso, que es donde nosotros
|
| 78 |
+
queremos almacenar los
|
| 79 |
+
|
| 80 |
+
01:08.800 --> 01:12.640
|
| 81 |
+
diferentes valores, y utilizamos tres puntos,
|
| 82 |
+
|
| 83 |
+
01:12.640 --> 01:16.600
|
| 84 |
+
que este es nuestro Spread Operator,
|
| 85 |
+
|
| 86 |
+
01:16.600 --> 01:20.480
|
| 87 |
+
y seguido le colocamos el valor del array
|
| 88 |
+
anterior que
|
| 89 |
+
|
| 90 |
+
01:20.480 --> 01:21.800
|
| 91 |
+
colocamos.
|
| 92 |
+
|
| 93 |
+
01:21.800 --> 01:25.760
|
| 94 |
+
Vamos a escribir un console.log para
|
| 95 |
+
revisar ambos.
|
| 96 |
+
|
| 97 |
+
01:25.760 --> 01:30.360
|
| 98 |
+
Vamos a revisar cu谩l es el original y cu谩l
|
| 99 |
+
es la copia.
|
| 100 |
+
|
| 101 |
+
01:30.360 --> 01:32.800
|
| 102 |
+
Vamos a guardar nuestro c贸digo y a correrlo.
|
| 103 |
+
|
| 104 |
+
01:36.240 --> 01:38.360
|
| 105 |
+
Y aqu铆 ya estamos viendo que tenemos,
|
| 106 |
+
|
| 107 |
+
01:38.360 --> 01:43.560
|
| 108 |
+
uno, el array original, 1, 2, 3, 4, 5,
|
| 109 |
+
y seguido, la copia.
|
| 110 |
+
|
| 111 |
+
01:43.560 --> 01:47.880
|
| 112 |
+
Estas copias normalmente es para no mutar
|
| 113 |
+
ciertos valores,
|
| 114 |
+
|
| 115 |
+
01:47.880 --> 01:51.080
|
| 116 |
+
y por eso normalmente a veces utilizamos
|
| 117 |
+
lo que es la copia,
|
| 118 |
+
|
| 119 |
+
01:51.080 --> 01:55.240
|
| 120 |
+
y en estos casos tambi茅n puede ser muy
|
| 121 |
+
煤til para poder hacer
|
| 122 |
+
|
| 123 |
+
01:55.240 --> 01:58.120
|
| 124 |
+
esas copias sin modificar justamente los
|
| 125 |
+
valores
|
| 126 |
+
|
| 127 |
+
01:58.120 --> 02:01.240
|
| 128 |
+
originales que tenemos en cierto c贸digo.
|
| 129 |
+
|
| 130 |
+
02:01.240 --> 02:06.440
|
| 131 |
+
Por otro lado, podemos utilizar el Spread
|
| 132 |
+
para combinar arrays.
|
| 133 |
+
|
| 134 |
+
02:06.440 --> 02:13.600
|
| 135 |
+
Entonces, voy a colocar por ac谩, n煤mero 2,
|
| 136 |
+
combining arrays,
|
| 137 |
+
|
| 138 |
+
02:13.600 --> 02:15.680
|
| 139 |
+
y vamos a crear dos
|
| 140 |
+
arrays.
|
| 141 |
+
|
| 142 |
+
02:15.680 --> 02:19.280
|
| 143 |
+
El primero va a ser, por ejemplo, unos
|
| 144 |
+
n煤meros.
|
| 145 |
+
|
| 146 |
+
02:19.280 --> 02:22.160
|
| 147 |
+
Nuevamente vamos a colocar 1, 2,
|
| 148 |
+
3,
|
| 149 |
+
|
| 150 |
+
02:22.160 --> 02:25.440
|
| 151 |
+
y vamos a colocar otro array, que en este
|
| 152 |
+
caso sea,
|
| 153 |
+
|
| 154 |
+
02:25.440 --> 02:29.480
|
| 155 |
+
por ejemplo, 4, 5, y
|
| 156 |
+
6.
|
| 157 |
+
|
| 158 |
+
02:29.480 --> 02:33.040
|
| 159 |
+
En esto lo que vamos a hacer es crear otra
|
| 160 |
+
variable que diga
|
| 161 |
+
|
| 162 |
+
02:33.040 --> 02:37.400
|
| 163 |
+
combined array, y le vamos a decir lo
|
| 164 |
+
siguiente.
|
| 165 |
+
|
| 166 |
+
02:37.400 --> 02:40.960
|
| 167 |
+
Creamos nuestro array, seguido utilizamos
|
| 168 |
+
nuestro Spread
|
| 169 |
+
|
| 170 |
+
02:40.960 --> 02:46.480
|
| 171 |
+
Operator, que ser铆a 1, 2, 3, y copiamos
|
| 172 |
+
nuestro array n煤mero
|
| 173 |
+
|
| 174 |
+
02:46.480 --> 02:46.960
|
| 175 |
+
1.
|
| 176 |
+
|
| 177 |
+
02:46.960 --> 02:50.360
|
| 178 |
+
Lo que estamos haciendo es como tomar todo
|
| 179 |
+
esto y, pum,
|
| 180 |
+
|
| 181 |
+
02:50.360 --> 02:52.320
|
| 182 |
+
desplegarlo
|
| 183 |
+
ac谩.
|
| 184 |
+
|
| 185 |
+
02:52.320 --> 02:56.960
|
| 186 |
+
Seguido colocamos una coma, 1, 2, 3, array 2,
|
| 187 |
+
|
| 188 |
+
02:56.960 --> 03:01.400
|
| 189 |
+
y despu茅s lo que hacemos es colocar console.
|
| 190 |
+
log para
|
| 191 |
+
|
| 192 |
+
03:01.400 --> 03:04.040
|
| 193 |
+
revisar todas estas cosas que acabamos de
|
| 194 |
+
hacer.
|
| 195 |
+
|
| 196 |
+
03:04.040 --> 03:07.680
|
| 197 |
+
Entonces, array n煤mero 1, array n煤mero 2,
|
| 198 |
+
|
| 199 |
+
03:07.680 --> 03:10.240
|
| 200 |
+
y la combinaci贸n de este
|
| 201 |
+
array.
|
| 202 |
+
|
| 203 |
+
03:10.240 --> 03:14.440
|
| 204 |
+
Vamos a correr nuevamente nuestro c贸digo.
|
| 205 |
+
|
| 206 |
+
03:14.440 --> 03:18.200
|
| 207 |
+
Y aqu铆 revisamos que tenemos 1, 2, 3 como
|
| 208 |
+
el primer array,
|
| 209 |
+
|
| 210 |
+
03:18.200 --> 03:22.200
|
| 211 |
+
el segundo 4, 5, 6, y despu茅s tenemos la
|
| 212 |
+
combinaci贸n de
|
| 213 |
+
|
| 214 |
+
03:22.200 --> 03:25.280
|
| 215 |
+
ambos utilizando Spread
|
| 216 |
+
Operator.
|
| 217 |
+
|
| 218 |
+
03:25.280 --> 03:30.720
|
| 219 |
+
Por otro lado, podr铆amos crear arrays
|
| 220 |
+
teniendo como base otro
|
| 221 |
+
|
| 222 |
+
03:30.720 --> 03:33.680
|
| 223 |
+
array y adicion谩ndole diferentes elementos.
|
| 224 |
+
|
| 225 |
+
03:33.680 --> 03:36.720
|
| 226 |
+
Por ejemplo, tenemos aqu铆, crea un array,
|
| 227 |
+
|
| 228 |
+
03:36.720 --> 03:39.400
|
| 229 |
+
que en este caso tendr铆amos unos libros
|
| 230 |
+
que son el rojo,
|
| 231 |
+
|
| 232 |
+
03:39.400 --> 03:43.520
|
| 233 |
+
el verde, el azul y el naranja, pero
|
| 234 |
+
podr铆amos tomar ese que ya
|
| 235 |
+
|
| 236 |
+
03:43.520 --> 03:48.640
|
| 237 |
+
tenemos y adicionarle 1, que en este caso
|
| 238 |
+
ser铆a el amarillo.
|
| 239 |
+
|
| 240 |
+
03:48.640 --> 03:51.200
|
| 241 |
+
En c贸digo esto se ver铆a de la siguiente
|
| 242 |
+
manera.
|
| 243 |
+
|
| 244 |
+
03:51.200 --> 03:59.680
|
| 245 |
+
Vamos a colocar ac谩, 3, creating arrays
|
| 246 |
+
with additional
|
| 247 |
+
|
| 248 |
+
03:59.680 --> 04:01.120
|
| 249 |
+
elements.
|
| 250 |
+
|
| 251 |
+
04:01.120 --> 04:02.080
|
| 252 |
+
Listo.
|
| 253 |
+
|
| 254 |
+
04:02.080 --> 04:05.080
|
| 255 |
+
Vamos a crear un array, que en este caso
|
| 256 |
+
vamos a colocar que
|
| 257 |
+
|
| 258 |
+
04:05.080 --> 04:07.080
|
| 259 |
+
es como el array
|
| 260 |
+
base.
|
| 261 |
+
|
| 262 |
+
04:07.080 --> 04:10.960
|
| 263 |
+
Y este array base va a tener elementos,
|
| 264 |
+
por ejemplo,
|
| 265 |
+
|
| 266 |
+
04:10.960 --> 04:12.200
|
| 267 |
+
1, 2 y
|
| 268 |
+
3.
|
| 269 |
+
|
| 270 |
+
04:12.200 --> 04:19.840
|
| 271 |
+
Seguido, vamos a colocar array with
|
| 272 |
+
additional elements.
|
| 273 |
+
|
| 274 |
+
04:19.840 --> 04:24.000
|
| 275 |
+
Y vamos a decirle, entonces, vamos a abrir
|
| 276 |
+
un array,
|
| 277 |
+
|
| 278 |
+
04:24.000 --> 04:25.960
|
| 279 |
+
en este caso, las
|
| 280 |
+
llaves.
|
| 281 |
+
|
| 282 |
+
04:25.960 --> 04:29.560
|
| 283 |
+
Seguido, vamos a colocar el Spread Operator,
|
| 284 |
+
1, 2, 3.
|
| 285 |
+
|
| 286 |
+
04:29.560 --> 04:35.000
|
| 287 |
+
Le decimos que nos copie este array que
|
| 288 |
+
tenemos como base y
|
| 289 |
+
|
| 290 |
+
04:35.000 --> 04:38.560
|
| 291 |
+
que adicional nos agregue otros elementos,
|
| 292 |
+
por ejemplo,
|
| 293 |
+
|
| 294 |
+
04:38.560 --> 04:41.040
|
| 295 |
+
el 4, el 5 y el
|
| 296 |
+
6.
|
| 297 |
+
|
| 298 |
+
04:41.040 --> 04:47.120
|
| 299 |
+
Vamos a colocar console.log de estas
|
| 300 |
+
variables que acabamos
|
| 301 |
+
|
| 302 |
+
04:47.120 --> 04:48.000
|
| 303 |
+
de
|
| 304 |
+
crear.
|
| 305 |
+
|
| 306 |
+
04:48.000 --> 04:51.200
|
| 307 |
+
Vamos a colocar base array y este array
|
| 308 |
+
with additional
|
| 309 |
+
|
| 310 |
+
04:51.200 --> 04:54.720
|
| 311 |
+
elements y corremos nuestro
|
| 312 |
+
c贸digo.
|
| 313 |
+
|
| 314 |
+
04:54.720 --> 04:59.440
|
| 315 |
+
Ac谩 ya revisamos nuestros dos 煤ltimos arrays,
|
| 316 |
+
que ser铆a 1,
|
| 317 |
+
|
| 318 |
+
04:59.440 --> 05:02.080
|
| 319 |
+
2, 3, como el array
|
| 320 |
+
base.
|
| 321 |
+
|
| 322 |
+
05:02.080 --> 05:06.720
|
| 323 |
+
Y luego tenemos 1, 2, 3 y otros elementos
|
| 324 |
+
que le agregamos
|
| 325 |
+
|
| 326 |
+
05:06.720 --> 05:09.440
|
| 327 |
+
justamente a ese array que es
|
| 328 |
+
base.
|
| 329 |
+
|
| 330 |
+
05:09.440 --> 05:12.480
|
| 331 |
+
Y, por supuesto, nos estamos modificando
|
| 332 |
+
nuestro array
|
| 333 |
+
|
| 334 |
+
05:12.480 --> 05:13.600
|
| 335 |
+
original.
|
| 336 |
+
|
| 337 |
+
05:13.600 --> 05:17.040
|
| 338 |
+
Por otro lado, otra cosa muy interesante
|
| 339 |
+
que podemos hacer
|
| 340 |
+
|
| 341 |
+
05:17.040 --> 05:22.360
|
| 342 |
+
con Spread Operators es pasarle par谩metros
|
| 343 |
+
a una funci贸n.
|
| 344 |
+
|
| 345 |
+
05:22.360 --> 05:27.640
|
| 346 |
+
Por ejemplo, vamos a colocar pass elements
|
| 347 |
+
to functions.
|
| 348 |
+
|
| 349 |
+
05:27.640 --> 05:32.920
|
| 350 |
+
Si tuvi茅ramos una funci贸n que sea de suma
|
| 351 |
+
y esta funci贸n lo
|
| 352 |
+
|
| 353 |
+
05:32.920 --> 05:38.120
|
| 354 |
+
que hace es sumar en return, sumar tres
|
| 355 |
+
valores.
|
| 356 |
+
|
| 357 |
+
05:38.120 --> 05:42.720
|
| 358 |
+
Vamos a colocarle, por ejemplo, ac谩 a, b y c.
|
| 359 |
+
|
| 360 |
+
05:42.720 --> 05:45.160
|
| 361 |
+
Y este return, esta suma como
|
| 362 |
+
tal,
|
| 363 |
+
|
| 364 |
+
05:45.160 --> 05:49.040
|
| 365 |
+
va a ser la suma de a m谩s b m谩s
|
| 366 |
+
c.
|
| 367 |
+
|
| 368 |
+
05:49.040 --> 05:51.800
|
| 369 |
+
Pues, lo que podemos hacer es decir,
|
| 370 |
+
|
| 371 |
+
05:51.800 --> 05:54.640
|
| 372 |
+
ah, bueno, yo quiero ejecutar esa funci贸n,
|
| 373 |
+
|
| 374 |
+
05:54.640 --> 05:57.800
|
| 375 |
+
pero no le quiero pasar los valores si
|
| 376 |
+
nosotros quisi茅ramos
|
| 377 |
+
|
| 378 |
+
05:57.800 --> 06:00.360
|
| 379 |
+
pasarle los valores normalmente antes de todo.
|
| 380 |
+
|
| 381 |
+
06:00.360 --> 06:02.440
|
| 382 |
+
Ser铆a, por ejemplo, 1, 2,
|
| 383 |
+
3.
|
| 384 |
+
|
| 385 |
+
06:02.440 --> 06:05.160
|
| 386 |
+
Si nosotros quisi茅ramos cambiar esa forma
|
| 387 |
+
de ejecuci贸n
|
| 388 |
+
|
| 389 |
+
06:05.160 --> 06:08.600
|
| 390 |
+
pas谩ndole un array con toda la cantidad de
|
| 391 |
+
elementos que
|
| 392 |
+
|
| 393 |
+
06:08.600 --> 06:12.440
|
| 394 |
+
queremos que se sumen ac谩, pues, lo
|
| 395 |
+
podemos hacer diciendo
|
| 396 |
+
|
| 397 |
+
06:12.440 --> 06:17.840
|
| 398 |
+
const num, o numbers, va a ser igual a
|
| 399 |
+
qui茅n?
|
| 400 |
+
|
| 401 |
+
06:17.840 --> 06:20.360
|
| 402 |
+
A 1, 2 y
|
| 403 |
+
3.
|
| 404 |
+
|
| 405 |
+
06:20.360 --> 06:24.320
|
| 406 |
+
驴C贸mo se lo pasamos a esta suma utilizando
|
| 407 |
+
Spread Operators?
|
| 408 |
+
|
| 409 |
+
06:24.320 --> 06:27.400
|
| 410 |
+
Bueno, vamos a colocarle ac谩, vamos a
|
| 411 |
+
borrar los par谩metros,
|
| 412 |
+
|
| 413 |
+
06:27.400 --> 06:31.720
|
| 414 |
+
le colocamos los tres puntos y seguido
|
| 415 |
+
colocamos nuestro array
|
| 416 |
+
|
| 417 |
+
06:31.720 --> 06:35.000
|
| 418 |
+
con los tres valores que ya tenemos en el
|
| 419 |
+
array.
|
| 420 |
+
|
| 421 |
+
06:35.000 --> 06:40.880
|
| 422 |
+
Aqu铆 vamos a colocar const result y vamos
|
| 423 |
+
a colocar un
|
| 424 |
+
|
| 425 |
+
06:40.880 --> 06:42.840
|
| 426 |
+
console.log de
|
| 427 |
+
qui茅n?
|
| 428 |
+
|
| 429 |
+
06:42.840 --> 06:46.120
|
| 430 |
+
De este resultado, para ver qu茅 sucedi贸 ac谩.
|
| 431 |
+
|
| 432 |
+
06:46.120 --> 06:50.280
|
| 433 |
+
Entonces, corremos nuevamente nuestro
|
| 434 |
+
c贸digo y aqu铆 ya
|
| 435 |
+
|
| 436 |
+
06:50.280 --> 06:53.800
|
| 437 |
+
tenemos como resultado el 6, que es la
|
| 438 |
+
suma de 1, 2 y 3.
|
| 439 |
+
|
| 440 |
+
06:53.800 --> 06:57.080
|
| 441 |
+
Y aqu铆 ya vemos que podemos utilizar
|
| 442 |
+
tambi茅n esta Spread
|
| 443 |
+
|
| 444 |
+
06:57.080 --> 06:58.560
|
| 445 |
+
Operator, 驴para
|
| 446 |
+
qu茅?
|
| 447 |
+
|
| 448 |
+
06:58.560 --> 07:02.760
|
| 449 |
+
Para pasar valores que tengamos en un
|
| 450 |
+
array justamente como
|
| 451 |
+
|
| 452 |
+
07:02.760 --> 07:05.800
|
| 453 |
+
par谩metros de una funci贸n, como en este caso.
|
| 454 |
+
|
| 455 |
+
07:05.800 --> 07:09.280
|
| 456 |
+
Cu茅ntame, 驴cu谩l fue tu forma favorita de
|
| 457 |
+
utilizar los Spread
|
| 458 |
+
|
| 459 |
+
07:09.280 --> 07:34.240
|
| 460 |
+
Operators en los
|
| 461 |
+
comentarios?
|
| 462 |
+
|
subir/Curso de Fundamentos de JavaScript/04-Manipulaci贸n de Arrays/08-clase-spread-operator_13d4bad1-6c65-47e2-bd80-89478793784f.js
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
// 1. Copying an Array
|
| 2 |
+
|
| 3 |
+
const originalArray = [1, 2, 3, 4, 5]
|
| 4 |
+
const copyOfAnArray = [...originalArray]
|
| 5 |
+
|
| 6 |
+
console.log(originalArray)
|
| 7 |
+
console.log(copyOfAnArray)
|
| 8 |
+
|
| 9 |
+
// 2. Combining Arrrays
|
| 10 |
+
|
| 11 |
+
const array1 = [1, 2, 3]
|
| 12 |
+
const array2 = [4, 5, 6]
|
| 13 |
+
const combinedArray = [...array1, ...array2]
|
| 14 |
+
|
| 15 |
+
console.log(array1)
|
| 16 |
+
console.log(array2)
|
| 17 |
+
console.log(combinedArray)
|
| 18 |
+
|
| 19 |
+
// 3. Creating Arrays with Additional Elements
|
| 20 |
+
|
| 21 |
+
const baseArray = [1, 2, 3]
|
| 22 |
+
const arrayWithAdditionalElements = [...baseArray, 4, 5, 6]
|
| 23 |
+
|
| 24 |
+
console.log(baseArray)
|
| 25 |
+
console.log(arrayWithAdditionalElements)
|
| 26 |
+
|
| 27 |
+
// 4. Pass elements to functions
|
| 28 |
+
|
| 29 |
+
function sum (a, b, c) {
|
| 30 |
+
return a + b + c
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
const numbers = [1, 2, 3]
|
| 34 |
+
const result = sum(...numbers)
|
| 35 |
+
|
| 36 |
+
console.log(result)
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/01-Lecturas recomendadas.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
https://github.com/platzi/basico-js
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/01-Programaci贸n Orientada a Objetos en JavaScript Conceptos y Pr谩ctica.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:a6401628e109ea2e6434ddf6319f270d91ee6b8cf71491fd638b05d0abf9a86a
|
| 3 |
+
size 30413424
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/01-Programaci贸n Orientada a Objetos en JavaScript Conceptos y Pr谩ctica.vtt
ADDED
|
@@ -0,0 +1,529 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
WEBVTT
|
| 2 |
+
|
| 3 |
+
00:00.000 --> 00:02.400
|
| 4 |
+
Comencemos hablando de
|
| 5 |
+
objetos.
|
| 6 |
+
|
| 7 |
+
00:02.400 --> 00:06.000
|
| 8 |
+
Y este es un t茅rmino que posiblemente has
|
| 9 |
+
escuchado much铆simo.
|
| 10 |
+
|
| 11 |
+
00:06.000 --> 00:09.400
|
| 12 |
+
Has escuchado de JSON, has escuchado de
|
| 13 |
+
objetos,
|
| 14 |
+
|
| 15 |
+
00:09.400 --> 00:12.100
|
| 16 |
+
has escuchado de programaci贸n orientada a
|
| 17 |
+
objetos.
|
| 18 |
+
|
| 19 |
+
00:12.100 --> 00:15.200
|
| 20 |
+
Y eso es la base de lo que va a hacer esta
|
| 21 |
+
clase.
|
| 22 |
+
|
| 23 |
+
00:16.200 --> 00:17.600
|
| 24 |
+
驴Qu茅 son los
|
| 25 |
+
objetos?
|
| 26 |
+
|
| 27 |
+
00:17.600 --> 00:20.600
|
| 28 |
+
驴C贸mo podemos traducirlos? 驴C贸mo los vamos
|
| 29 |
+
a utilizar?
|
| 30 |
+
|
| 31 |
+
00:20.600 --> 00:24.200
|
| 32 |
+
驴C贸mo puedo empezar a generar cosas con
|
| 33 |
+
objetos?
|
| 34 |
+
|
| 35 |
+
00:24.200 --> 00:26.000
|
| 36 |
+
Vamos pr谩cticamente a nuestro c贸digo.
|
| 37 |
+
|
| 38 |
+
00:26.000 --> 00:30.200
|
| 39 |
+
Aqu铆 voy a abrir algunos
|
| 40 |
+
comentarios
|
| 41 |
+
|
| 42 |
+
00:31.600 --> 00:33.000
|
| 43 |
+
para empezar a
|
| 44 |
+
escribir.
|
| 45 |
+
|
| 46 |
+
00:33.000 --> 00:38.800
|
| 47 |
+
Pero los objetos pr谩cticamente podemos
|
| 48 |
+
traducirlos como una estructura,
|
| 49 |
+
|
| 50 |
+
00:40.400 --> 00:42.000
|
| 51 |
+
como una estructura de
|
| 52 |
+
datos.
|
| 53 |
+
|
| 54 |
+
00:42.000 --> 00:43.200
|
| 55 |
+
Pr谩cticamente es
|
| 56 |
+
esto.
|
| 57 |
+
|
| 58 |
+
00:43.200 --> 00:47.200
|
| 59 |
+
Un objeto a grandes rasgos es simplemente
|
| 60 |
+
una estructura de datos
|
| 61 |
+
|
| 62 |
+
00:47.200 --> 00:50.400
|
| 63 |
+
que me ayuda a guardar valores de una
|
| 64 |
+
forma particular,
|
| 65 |
+
|
| 66 |
+
00:50.400 --> 00:53.800
|
| 67 |
+
que se le llama Key
|
| 68 |
+
Value.
|
| 69 |
+
|
| 70 |
+
00:53.800 --> 00:58.600
|
| 71 |
+
Esto quiere decir que va a haber algo que
|
| 72 |
+
se le llama propiedad
|
| 73 |
+
|
| 74 |
+
00:58.600 --> 01:01.200
|
| 75 |
+
y el valor de la
|
| 76 |
+
propiedad.
|
| 77 |
+
|
| 78 |
+
01:01.200 --> 01:03.600
|
| 79 |
+
Y esto es la forma que, o m谩s
|
| 80 |
+
bien,
|
| 81 |
+
|
| 82 |
+
01:03.600 --> 01:06.200
|
| 83 |
+
es lo que nos va a ayudar a generar la
|
| 84 |
+
estructura
|
| 85 |
+
|
| 86 |
+
01:06.200 --> 01:09.600
|
| 87 |
+
de lo que conocemos como un
|
| 88 |
+
objeto.
|
| 89 |
+
|
| 90 |
+
01:09.600 --> 01:12.400
|
| 91 |
+
驴Cu谩l es esa estructura ya mucho m谩s
|
| 92 |
+
generalizada?
|
| 93 |
+
|
| 94 |
+
01:12.400 --> 01:14.200
|
| 95 |
+
Si tenemos aqu铆 nuestro
|
| 96 |
+
objeto,
|
| 97 |
+
|
| 98 |
+
01:14.200 --> 01:16.800
|
| 99 |
+
tienen que llevar un nombre al objeto,
|
| 100 |
+
|
| 101 |
+
01:16.800 --> 01:18.400
|
| 102 |
+
abrimos
|
| 103 |
+
corchetes,
|
| 104 |
+
|
| 105 |
+
01:18.400 --> 01:21.200
|
| 106 |
+
y adentro de los corchetes vamos a
|
| 107 |
+
poner
|
| 108 |
+
|
| 109 |
+
01:21.200 --> 01:26.200
|
| 110 |
+
lo que se llaman las propiedades y el
|
| 111 |
+
valor de las propiedades.
|
| 112 |
+
|
| 113 |
+
01:26.200 --> 01:29.800
|
| 114 |
+
Cada propiedad tiene que llevar un valor.
|
| 115 |
+
|
| 116 |
+
01:29.800 --> 01:33.600
|
| 117 |
+
Despu茅s, si queremos agregar otro tipo de
|
| 118 |
+
propiedad,
|
| 119 |
+
|
| 120 |
+
01:33.600 --> 01:37.400
|
| 121 |
+
agregamos otra propiedad igual a otro tipo
|
| 122 |
+
de valor,
|
| 123 |
+
|
| 124 |
+
01:37.400 --> 01:41.000
|
| 125 |
+
que en este caso, el igual, si vemos ya la
|
| 126 |
+
estructura real,
|
| 127 |
+
|
| 128 |
+
01:41.000 --> 01:44.400
|
| 129 |
+
es la propiedad, dos puntos y el valor.
|
| 130 |
+
|
| 131 |
+
01:44.400 --> 01:48.400
|
| 132 |
+
La propiedad, dos puntos y el valor.
|
| 133 |
+
|
| 134 |
+
01:48.400 --> 01:51.600
|
| 135 |
+
Si voy a agregar otra propiedad, agrego la
|
| 136 |
+
coma
|
| 137 |
+
|
| 138 |
+
01:51.600 --> 01:54.200
|
| 139 |
+
y vuelvo a repetir lo
|
| 140 |
+
mismo.
|
| 141 |
+
|
| 142 |
+
01:54.200 --> 01:57.400
|
| 143 |
+
Propiedad, dos puntos y el
|
| 144 |
+
valor.
|
| 145 |
+
|
| 146 |
+
01:57.400 --> 02:00.800
|
| 147 |
+
Algo importante a destacar de la parte de
|
| 148 |
+
los objetos
|
| 149 |
+
|
| 150 |
+
02:00.800 --> 02:02.400
|
| 151 |
+
es que, como te acabo de
|
| 152 |
+
decir,
|
| 153 |
+
|
| 154 |
+
02:02.400 --> 02:04.000
|
| 155 |
+
esto es una estructura de
|
| 156 |
+
datos
|
| 157 |
+
|
| 158 |
+
02:04.000 --> 02:06.400
|
| 159 |
+
que me ayuda a guardar
|
| 160 |
+
informaci贸n.
|
| 161 |
+
|
| 162 |
+
02:06.400 --> 02:08.400
|
| 163 |
+
Posiblemente, a tu edad no te queda claro de,
|
| 164 |
+
|
| 165 |
+
02:08.400 --> 02:11.600
|
| 166 |
+
ok, no entiendo c贸mo querr铆a yo guardar
|
| 167 |
+
propiedad y valor.
|
| 168 |
+
|
| 169 |
+
02:11.600 --> 02:13.000
|
| 170 |
+
Aqu铆 tengo una
|
| 171 |
+
pregunta.
|
| 172 |
+
|
| 173 |
+
02:13.000 --> 02:14.800
|
| 174 |
+
Si yo te pido que, por
|
| 175 |
+
favor,
|
| 176 |
+
|
| 177 |
+
02:14.800 --> 02:19.800
|
| 178 |
+
me generes una persona o me generes un
|
| 179 |
+
carro en JavaScript,
|
| 180 |
+
|
| 181 |
+
02:19.800 --> 02:22.800
|
| 182 |
+
驴cu谩l ser铆a tu forma de construir una
|
| 183 |
+
persona
|
| 184 |
+
|
| 185 |
+
02:22.800 --> 02:25.400
|
| 186 |
+
o construir un carro en
|
| 187 |
+
JavaScript?
|
| 188 |
+
|
| 189 |
+
02:25.400 --> 02:29.800
|
| 190 |
+
Y ah铆 es donde empezamos a hablar de
|
| 191 |
+
abstraer las cosas,
|
| 192 |
+
|
| 193 |
+
02:29.800 --> 02:32.400
|
| 194 |
+
abstraer la realidad y llevarlas a
|
| 195 |
+
programaci贸n.
|
| 196 |
+
|
| 197 |
+
02:32.400 --> 02:35.600
|
| 198 |
+
Y ah铆 viene programaci贸n orientada a objetos.
|
| 199 |
+
|
| 200 |
+
02:35.600 --> 02:38.800
|
| 201 |
+
Los objetos son la base de lo que nos va a
|
| 202 |
+
ayudar
|
| 203 |
+
|
| 204 |
+
02:38.800 --> 02:41.200
|
| 205 |
+
a generar un paradigma de
|
| 206 |
+
programaci贸n
|
| 207 |
+
|
| 208 |
+
02:41.200 --> 02:44.200
|
| 209 |
+
que es abstraer con los
|
| 210 |
+
objetos.
|
| 211 |
+
|
| 212 |
+
02:44.200 --> 02:47.200
|
| 213 |
+
Abstraer cosas u objetos de la
|
| 214 |
+
realidad
|
| 215 |
+
|
| 216 |
+
02:47.200 --> 02:49.200
|
| 217 |
+
para poderlas llevar a programaci贸n.
|
| 218 |
+
|
| 219 |
+
02:49.200 --> 02:51.800
|
| 220 |
+
Entonces, vamos con esto a un
|
| 221 |
+
ejemplo
|
| 222 |
+
|
| 223 |
+
02:51.800 --> 02:55.200
|
| 224 |
+
para que puedas ver entonces c贸mo podremos
|
| 225 |
+
construir
|
| 226 |
+
|
| 227 |
+
02:55.200 --> 03:00.000
|
| 228 |
+
o podemos llevar a una persona a la
|
| 229 |
+
programaci贸n con un objeto.
|
| 230 |
+
|
| 231 |
+
03:00.000 --> 03:03.000
|
| 232 |
+
Lo primero es voy a construir una
|
| 233 |
+
constante
|
| 234 |
+
|
| 235 |
+
03:03.000 --> 03:05.200
|
| 236 |
+
que se va a llamar
|
| 237 |
+
persona.
|
| 238 |
+
|
| 239 |
+
03:07.200 --> 03:09.400
|
| 240 |
+
Este va a ser nuestro primer objeto.
|
| 241 |
+
|
| 242 |
+
03:09.400 --> 03:13.200
|
| 243 |
+
Despu茅s, te coment茅 que tenemos que tener
|
| 244 |
+
propiedades y valores.
|
| 245 |
+
|
| 246 |
+
03:13.200 --> 03:15.200
|
| 247 |
+
Entonces, 驴qu茅 forma a una
|
| 248 |
+
persona?
|
| 249 |
+
|
| 250 |
+
03:15.200 --> 03:18.200
|
| 251 |
+
Si tuvi茅ramos que escribir cu谩les son las
|
| 252 |
+
propiedades de una persona,
|
| 253 |
+
|
| 254 |
+
03:18.200 --> 03:20.800
|
| 255 |
+
驴qu茅 es lo que me dir铆as? Puedes colocarlo
|
| 256 |
+
en comentarios.
|
| 257 |
+
|
| 258 |
+
03:20.800 --> 03:24.200
|
| 259 |
+
Pero de inicio te puedo decir una persona
|
| 260 |
+
lleva un nombre.
|
| 261 |
+
|
| 262 |
+
03:24.200 --> 03:25.200
|
| 263 |
+
Perfecto.
|
| 264 |
+
|
| 265 |
+
03:25.200 --> 03:28.200
|
| 266 |
+
Y en este caso, este nombre se va a llamar
|
| 267 |
+
John.
|
| 268 |
+
|
| 269 |
+
03:29.200 --> 03:31.200
|
| 270 |
+
驴Qu茅 tipo de propiedad
|
| 271 |
+
lleva?
|
| 272 |
+
|
| 273 |
+
03:31.200 --> 03:33.200
|
| 274 |
+
Tiene, por ejemplo,
|
| 275 |
+
edad.
|
| 276 |
+
|
| 277 |
+
03:33.200 --> 03:34.200
|
| 278 |
+
OK.
|
| 279 |
+
|
| 280 |
+
03:34.200 --> 03:37.200
|
| 281 |
+
Y esta edad es 30, por
|
| 282 |
+
ejemplo.
|
| 283 |
+
|
| 284 |
+
03:37.200 --> 03:40.200
|
| 285 |
+
Aqu铆 te das cuenta, estamos respetando lo
|
| 286 |
+
que es el tipo de valor.
|
| 287 |
+
|
| 288 |
+
03:40.200 --> 03:44.200
|
| 289 |
+
Edad es un n煤mero, as铆 que simplemente lo
|
| 290 |
+
colocamos como un n煤mero.
|
| 291 |
+
|
| 292 |
+
03:44.200 --> 03:47.200
|
| 293 |
+
John es un string, as铆 que lo colocamos en
|
| 294 |
+
comillas
|
| 295 |
+
|
| 296 |
+
03:47.200 --> 03:50.200
|
| 297 |
+
para que se pueda poner como un string.
|
| 298 |
+
|
| 299 |
+
03:50.200 --> 03:52.200
|
| 300 |
+
驴Qu茅 otro tipo de valor
|
| 301 |
+
llevar铆a?
|
| 302 |
+
|
| 303 |
+
03:52.200 --> 03:54.200
|
| 304 |
+
Por ejemplo, 驴qu茅 tipo de
|
| 305 |
+
propiedad?
|
| 306 |
+
|
| 307 |
+
03:54.200 --> 03:57.200
|
| 308 |
+
Una persona puede tener, a lo mejor,
|
| 309 |
+
alguna direcci贸n.
|
| 310 |
+
|
| 311 |
+
03:57.200 --> 03:59.200
|
| 312 |
+
Y podemos
|
| 313 |
+
agregarlo.
|
| 314 |
+
|
| 315 |
+
03:59.200 --> 04:04.200
|
| 316 |
+
Y esta direcci贸n est谩 compuesta por otro
|
| 317 |
+
tipo de propiedades y valores.
|
| 318 |
+
|
| 319 |
+
04:04.200 --> 04:08.200
|
| 320 |
+
As铆 que aqu铆 vamos a generar otro peque帽o
|
| 321 |
+
objeto
|
| 322 |
+
|
| 323 |
+
04:08.200 --> 04:10.200
|
| 324 |
+
que lleve otro tipo de
|
| 325 |
+
propiedades.
|
| 326 |
+
|
| 327 |
+
04:10.200 --> 04:12.200
|
| 328 |
+
Que ser铆a, por ejemplo,
|
| 329 |
+
calle.
|
| 330 |
+
|
| 331 |
+
04:12.200 --> 04:13.200
|
| 332 |
+
OK.
|
| 333 |
+
|
| 334 |
+
04:13.200 --> 04:23.200
|
| 335 |
+
Y la calle podemos decir que es Avenida
|
| 336 |
+
Insurgentes n煤mero 187.
|
| 337 |
+
|
| 338 |
+
04:23.200 --> 04:26.200
|
| 339 |
+
Y que es de
|
| 340 |
+
ciudad.
|
| 341 |
+
|
| 342 |
+
04:26.200 --> 04:29.200
|
| 343 |
+
Y es ciudad de
|
| 344 |
+
M茅xico.
|
| 345 |
+
|
| 346 |
+
04:30.200 --> 04:31.200
|
| 347 |
+
Perfecto.
|
| 348 |
+
|
| 349 |
+
04:31.200 --> 04:35.200
|
| 350 |
+
Ahora, dentro de la estructura de los objetos,
|
| 351 |
+
|
| 352 |
+
04:35.200 --> 04:38.200
|
| 353 |
+
los objetos llevan propiedad y valor,
|
| 354 |
+
|
| 355 |
+
04:38.200 --> 04:42.200
|
| 356 |
+
pero tambi茅n hay algo que se le llama m茅todos.
|
| 357 |
+
|
| 358 |
+
04:44.200 --> 04:46.200
|
| 359 |
+
驴Y qu茅 ser铆an los
|
| 360 |
+
m茅todos?
|
| 361 |
+
|
| 362 |
+
04:46.200 --> 04:50.200
|
| 363 |
+
Los m茅todos son funciones que est谩n
|
| 364 |
+
adentro de objetos
|
| 365 |
+
|
| 366 |
+
04:50.200 --> 04:52.200
|
| 367 |
+
que nos ayudan a generar la interacci贸n.
|
| 368 |
+
|
| 369 |
+
04:52.200 --> 04:54.200
|
| 370 |
+
Las propiedades nos dan
|
| 371 |
+
valor,
|
| 372 |
+
|
| 373 |
+
04:54.200 --> 04:58.200
|
| 374 |
+
los objetos nos ayudan a generar interacci贸n.
|
| 375 |
+
|
| 376 |
+
04:58.200 --> 05:01.200
|
| 377 |
+
Entonces, vamos a ver c贸mo construir铆amos
|
| 378 |
+
un m茅todo
|
| 379 |
+
|
| 380 |
+
05:01.200 --> 05:02.200
|
| 381 |
+
adentro de un
|
| 382 |
+
objeto.
|
| 383 |
+
|
| 384 |
+
05:02.200 --> 05:05.200
|
| 385 |
+
Por ejemplo, una persona puede saludar.
|
| 386 |
+
|
| 387 |
+
05:05.200 --> 05:09.200
|
| 388 |
+
Y el saludar de una persona es como una
|
| 389 |
+
interacci贸n
|
| 390 |
+
|
| 391 |
+
05:09.200 --> 05:11.200
|
| 392 |
+
que no es pr谩cticamente informaci贸n,
|
| 393 |
+
|
| 394 |
+
05:11.200 --> 05:13.200
|
| 395 |
+
pero simplemente genera una interacci贸n.
|
| 396 |
+
|
| 397 |
+
05:13.200 --> 05:17.200
|
| 398 |
+
Y esto es algo, es una acci贸n que puede
|
| 399 |
+
llevar una persona.
|
| 400 |
+
|
| 401 |
+
05:17.200 --> 05:19.200
|
| 402 |
+
As铆 que para poder construir un m茅todo,
|
| 403 |
+
|
| 404 |
+
05:19.200 --> 05:22.200
|
| 405 |
+
nosotros generamos, por ejemplo, saludar.
|
| 406 |
+
|
| 407 |
+
05:22.200 --> 05:24.200
|
| 408 |
+
Vamos a construir esta
|
| 409 |
+
funci贸n.
|
| 410 |
+
|
| 411 |
+
05:24.200 --> 05:27.200
|
| 412 |
+
Y ya dentro de la funci贸n vamos a hacer la
|
| 413 |
+
acci贸n.
|
| 414 |
+
|
| 415 |
+
05:27.200 --> 05:33.200
|
| 416 |
+
En este caso, el saludar va a
|
| 417 |
+
ser,
|
| 418 |
+
|
| 419 |
+
05:33.200 --> 05:37.200
|
| 420 |
+
vamos a utilizar partes del
|
| 421 |
+
objeto.
|
| 422 |
+
|
| 423 |
+
05:37.200 --> 05:42.200
|
| 424 |
+
En este caso va a ser hola, mi nombre es,
|
| 425 |
+
|
| 426 |
+
05:42.200 --> 05:47.200
|
| 427 |
+
y aqu铆 vamos a colocar el nombre de
|
| 428 |
+
nuestro objeto persona.
|
| 429 |
+
|
| 430 |
+
05:47.200 --> 05:51.200
|
| 431 |
+
Persona.nombre.
|
| 432 |
+
|
| 433 |
+
05:51.200 --> 05:55.200
|
| 434 |
+
Estamos colocando el nombre del objeto de
|
| 435 |
+
nuestra persona.
|
| 436 |
+
|
| 437 |
+
05:55.200 --> 05:58.200
|
| 438 |
+
Entonces es el nombre que le pertenece al
|
| 439 |
+
objeto
|
| 440 |
+
|
| 441 |
+
05:58.200 --> 06:01.200
|
| 442 |
+
de este objeto
|
| 443 |
+
pr谩cticamente.
|
| 444 |
+
|
| 445 |
+
06:01.200 --> 06:02.200
|
| 446 |
+
Perfecto.
|
| 447 |
+
|
| 448 |
+
06:02.200 --> 06:04.200
|
| 449 |
+
Entonces ya con esto tenemos una
|
| 450 |
+
estructura base
|
| 451 |
+
|
| 452 |
+
06:04.200 --> 06:05.200
|
| 453 |
+
de qu茅 es un
|
| 454 |
+
objeto.
|
| 455 |
+
|
| 456 |
+
06:05.200 --> 06:08.200
|
| 457 |
+
Si yo te preguntara c贸mo llevar铆as a una
|
| 458 |
+
persona a programaci贸n,
|
| 459 |
+
|
| 460 |
+
06:08.200 --> 06:10.200
|
| 461 |
+
s茅 que suena bastante
|
| 462 |
+
abstracto,
|
| 463 |
+
|
| 464 |
+
06:10.200 --> 06:13.200
|
| 465 |
+
pero esto es parte del paradigma de
|
| 466 |
+
programaci贸n orientado a objeto.
|
| 467 |
+
|
| 468 |
+
06:13.200 --> 06:16.200
|
| 469 |
+
Esta ser铆a la respuesta de c贸mo
|
| 470 |
+
llevar铆amos
|
| 471 |
+
|
| 472 |
+
06:16.200 --> 06:18.200
|
| 473 |
+
a una persona a
|
| 474 |
+
programaci贸n.
|
| 475 |
+
|
| 476 |
+
06:18.200 --> 06:21.200
|
| 477 |
+
Generamos un objeto que tiene ciertas
|
| 478 |
+
propiedades,
|
| 479 |
+
|
| 480 |
+
06:21.200 --> 06:24.200
|
| 481 |
+
que tiene ciertos m茅todos que
|
| 482 |
+
forman
|
| 483 |
+
|
| 484 |
+
06:24.200 --> 06:25.200
|
| 485 |
+
una
|
| 486 |
+
persona.
|
| 487 |
+
|
| 488 |
+
06:25.200 --> 06:26.200
|
| 489 |
+
驴Por
|
| 490 |
+
qu茅?
|
| 491 |
+
|
| 492 |
+
06:26.200 --> 06:28.200
|
| 493 |
+
Porque tenemos el nombre, tenemos la edad,
|
| 494 |
+
|
| 495 |
+
06:28.200 --> 06:29.200
|
| 496 |
+
podemos tener el
|
| 497 |
+
g茅nero,
|
| 498 |
+
|
| 499 |
+
06:29.200 --> 06:32.200
|
| 500 |
+
podemos tener otro tipo de propiedades que
|
| 501 |
+
nos ayuden
|
| 502 |
+
|
| 503 |
+
06:32.200 --> 06:34.200
|
| 504 |
+
a entender qu茅 es una
|
| 505 |
+
persona.
|
| 506 |
+
|
| 507 |
+
06:34.200 --> 06:36.200
|
| 508 |
+
En este caso aqu铆 estamos agregando,
|
| 509 |
+
por ejemplo,
|
| 510 |
+
|
| 511 |
+
06:36.200 --> 06:39.200
|
| 512 |
+
un peque帽o objeto interno que tiene otro
|
| 513 |
+
tipo de propiedades
|
| 514 |
+
|
| 515 |
+
06:39.200 --> 06:41.200
|
| 516 |
+
que es la direcci贸n de la
|
| 517 |
+
persona.
|
| 518 |
+
|
| 519 |
+
06:41.200 --> 06:43.200
|
| 520 |
+
Y estamos generando un m茅todo que es una
|
| 521 |
+
acci贸n
|
| 522 |
+
|
| 523 |
+
06:43.200 --> 06:45.200
|
| 524 |
+
que esta persona puede hacer, que es saludar.
|
| 525 |
+
|
| 526 |
+
06:45.200 --> 06:55.200
|
| 527 |
+
Y al momento de saludar nos va a decir su
|
| 528 |
+
nombre.
|
| 529 |
+
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/01-Resumen.html
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/01-index_2f0c6cdf-1728-43de-b87c-10c86349e8e1.js
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*
|
| 2 |
+
|
| 3 |
+
estructura de datos
|
| 4 |
+
|
| 5 |
+
key / value
|
| 6 |
+
|
| 7 |
+
objeto {
|
| 8 |
+
propiedad: valor,
|
| 9 |
+
propiedad: valor,
|
| 10 |
+
propiedad: valor
|
| 11 |
+
Metodos()
|
| 12 |
+
}
|
| 13 |
+
|
| 14 |
+
*/
|
| 15 |
+
|
| 16 |
+
const persona = {
|
| 17 |
+
nombre: "John",
|
| 18 |
+
edad: 30,
|
| 19 |
+
direccion: {
|
| 20 |
+
calle: "Av Insurgentre 187",
|
| 21 |
+
ciudad: "CDMX",
|
| 22 |
+
},
|
| 23 |
+
saludar() {
|
| 24 |
+
console.log(`hola, mi nombre es ${persona.nombre}`);
|
| 25 |
+
},
|
| 26 |
+
};
|
| 27 |
+
|
| 28 |
+
// Imprimamos el objeto
|
| 29 |
+
|
| 30 |
+
console.log(persona);
|
| 31 |
+
|
| 32 |
+
// Imprimamos la propiedad nombre
|
| 33 |
+
|
| 34 |
+
console.log(persona.nombre);
|
| 35 |
+
|
| 36 |
+
// Imprimamos el metodo saludar
|
| 37 |
+
|
| 38 |
+
persona.saludar();
|
| 39 |
+
|
| 40 |
+
//
|
| 41 |
+
//
|
| 42 |
+
//
|
| 43 |
+
//
|
| 44 |
+
//
|
| 45 |
+
// Agrergamos una propiedad al objeto en este caso telefono
|
| 46 |
+
|
| 47 |
+
persona.telefono = "555-555-5555";
|
| 48 |
+
|
| 49 |
+
console.log(persona.telefono);
|
| 50 |
+
|
| 51 |
+
// Agregamos un metodo al objeto
|
| 52 |
+
|
| 53 |
+
persona.despedir = () => {
|
| 54 |
+
console.log("Adios");
|
| 55 |
+
};
|
| 56 |
+
|
| 57 |
+
persona.despedir();
|
| 58 |
+
|
| 59 |
+
// Acceder a una propiedad de un objeto anidado / Metodo
|
| 60 |
+
|
| 61 |
+
console.log(persona.direccion.calle);
|
| 62 |
+
|
| 63 |
+
//
|
| 64 |
+
//
|
| 65 |
+
//
|
| 66 |
+
//
|
| 67 |
+
//
|
| 68 |
+
//
|
| 69 |
+
// Eliminar una propiedad de un objeto
|
| 70 |
+
|
| 71 |
+
delete persona.telefono;
|
| 72 |
+
|
| 73 |
+
console.log(persona.telefono);
|
| 74 |
+
|
| 75 |
+
// Eliminar un metodo de un objeto
|
| 76 |
+
|
| 77 |
+
delete persona.despedir;
|
| 78 |
+
|
| 79 |
+
console.log(persona.despedir());
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/02-Creaci贸n y Manipulaci贸n de Objetos en JavaScript.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:7a5a7230b4e46ade5a1bade1048ac0029268dd9ddea1e7af0a641592f2c7ed43
|
| 3 |
+
size 77973677
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/02-Creaci贸n y Manipulaci贸n de Objetos en JavaScript.vtt
ADDED
|
@@ -0,0 +1,640 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
WEBVTT
|
| 2 |
+
|
| 3 |
+
00:00.000 --> 00:03.600
|
| 4 |
+
Cuando hablamos de objetos, podemos ver
|
| 5 |
+
los objetos como una
|
| 6 |
+
|
| 7 |
+
00:03.600 --> 00:04.720
|
| 8 |
+
estructura de
|
| 9 |
+
datos.
|
| 10 |
+
|
| 11 |
+
00:08.960 --> 00:11.480
|
| 12 |
+
Esto nos va a ayudar a guardar informaci贸n
|
| 13 |
+
y la vamos a guardar
|
| 14 |
+
|
| 15 |
+
00:11.480 --> 00:12.720
|
| 16 |
+
de una forma
|
| 17 |
+
particular.
|
| 18 |
+
|
| 19 |
+
00:12.720 --> 00:19.320
|
| 20 |
+
Vamos a tomar en cuenta dos cosas, el key
|
| 21 |
+
y un value.
|
| 22 |
+
|
| 23 |
+
00:19.320 --> 00:22.720
|
| 24 |
+
Este key value va a ser, va a usar una
|
| 25 |
+
propiedad y esa
|
| 26 |
+
|
| 27 |
+
00:22.720 --> 00:24.560
|
| 28 |
+
propiedad va a tener un
|
| 29 |
+
valor.
|
| 30 |
+
|
| 31 |
+
00:24.560 --> 00:26.880
|
| 32 |
+
Y as铆 es como vamos a guardar la informaci贸n.
|
| 33 |
+
|
| 34 |
+
00:26.880 --> 00:30.840
|
| 35 |
+
Podemos ver el objeto, m谩s o menos la
|
| 36 |
+
estructura ser铆a
|
| 37 |
+
|
| 38 |
+
00:30.840 --> 00:33.600
|
| 39 |
+
objeto.
|
| 40 |
+
|
| 41 |
+
00:33.600 --> 00:35.360
|
| 42 |
+
Vamos a abrir nuestros
|
| 43 |
+
crochetes.
|
| 44 |
+
|
| 45 |
+
00:35.360 --> 00:39.240
|
| 46 |
+
Y entonces aqu铆 ponemos propiedad y esta
|
| 47 |
+
propiedad va
|
| 48 |
+
|
| 49 |
+
00:39.240 --> 00:41.640
|
| 50 |
+
a tener el
|
| 51 |
+
valor.
|
| 52 |
+
|
| 53 |
+
00:41.640 --> 00:43.400
|
| 54 |
+
Si queremos guardar m谩s informaci贸n,
|
| 55 |
+
|
| 56 |
+
00:43.400 --> 00:49.920
|
| 57 |
+
ponemos una coma y bajamos propiedad y de
|
| 58 |
+
igual forma
|
| 59 |
+
|
| 60 |
+
00:49.920 --> 00:50.960
|
| 61 |
+
valor.
|
| 62 |
+
|
| 63 |
+
00:50.960 --> 00:55.400
|
| 64 |
+
Y as铆 podemos continuar nosotros guardando
|
| 65 |
+
m谩s propiedades que
|
| 66 |
+
|
| 67 |
+
00:55.400 --> 00:57.800
|
| 68 |
+
a su vez tengan
|
| 69 |
+
valores.
|
| 70 |
+
|
| 71 |
+
00:57.800 --> 01:01.440
|
| 72 |
+
Y si queremos ya no tener la propiedad y
|
| 73 |
+
valor, por ejemplo,
|
| 74 |
+
|
| 75 |
+
01:01.440 --> 01:05.440
|
| 76 |
+
los objetos tambi茅n tienen algo que se le
|
| 77 |
+
conoce como m茅todos.
|
| 78 |
+
|
| 79 |
+
01:05.440 --> 01:09.640
|
| 80 |
+
Que los m茅todos son acciones que van a
|
| 81 |
+
hacer los objetos con
|
| 82 |
+
|
| 83 |
+
01:09.640 --> 01:12.320
|
| 84 |
+
cierta informaci贸n que
|
| 85 |
+
tengan.
|
| 86 |
+
|
| 87 |
+
01:12.320 --> 01:15.320
|
| 88 |
+
La forma de generar los m茅todos es como si
|
| 89 |
+
hici茅ramos una
|
| 90 |
+
|
| 91 |
+
01:15.320 --> 01:19.240
|
| 92 |
+
funci贸n, pero esta funci贸n va a ir adentro
|
| 93 |
+
de nuestro objeto.
|
| 94 |
+
|
| 95 |
+
01:19.240 --> 01:21.960
|
| 96 |
+
Entonces, 驴c贸mo llevamos esto a un objeto
|
| 97 |
+
en la realidad?
|
| 98 |
+
|
| 99 |
+
01:21.960 --> 01:23.920
|
| 100 |
+
Pues bueno, esta es la
|
| 101 |
+
estructura,
|
| 102 |
+
|
| 103 |
+
01:23.920 --> 01:26.880
|
| 104 |
+
pero vamos a construir en este momento un
|
| 105 |
+
objeto.
|
| 106 |
+
|
| 107 |
+
01:26.880 --> 01:30.640
|
| 108 |
+
Entonces vamos a construir un objeto.
|
| 109 |
+
|
| 110 |
+
01:30.640 --> 01:33.440
|
| 111 |
+
Empezamos con una constante y la constante
|
| 112 |
+
se va a llamar
|
| 113 |
+
|
| 114 |
+
01:33.440 --> 01:34.880
|
| 115 |
+
persona.
|
| 116 |
+
|
| 117 |
+
01:34.880 --> 01:37.880
|
| 118 |
+
Lo tenemos, va a ser igual a nuestros
|
| 119 |
+
crochetes.
|
| 120 |
+
|
| 121 |
+
01:37.880 --> 01:40.680
|
| 122 |
+
Y entonces aqu铆 comenzamos con nuestras
|
| 123 |
+
propiedades.
|
| 124 |
+
|
| 125 |
+
01:40.680 --> 01:46.760
|
| 126 |
+
Primero se va a llamar nombre, que va a
|
| 127 |
+
ser igual a,
|
| 128 |
+
|
| 129 |
+
01:46.760 --> 01:49.080
|
| 130 |
+
y vamos a utilizar un dato de string,
|
| 131 |
+
|
| 132 |
+
01:49.080 --> 01:53.360
|
| 133 |
+
John, coma, para poder colocar la segunda
|
| 134 |
+
propiedad,
|
| 135 |
+
|
| 136 |
+
01:53.360 --> 01:55.640
|
| 137 |
+
que va a ser igual a, que va a ser edad.
|
| 138 |
+
|
| 139 |
+
01:55.640 --> 02:00.600
|
| 140 |
+
Y en edad vamos a utilizar un tipo de dato
|
| 141 |
+
que es n煤mero.
|
| 142 |
+
|
| 143 |
+
02:00.600 --> 02:03.760
|
| 144 |
+
Y ahora vamos a poner
|
| 145 |
+
direcci贸n.
|
| 146 |
+
|
| 147 |
+
02:03.760 --> 02:07.440
|
| 148 |
+
Y la direcci贸n va a ser en s铆 otro peque帽o
|
| 149 |
+
objeto unidado,
|
| 150 |
+
|
| 151 |
+
02:07.440 --> 02:10.600
|
| 152 |
+
porque va a llevar m谩s propiedades, que
|
| 153 |
+
ser铆a calle.
|
| 154 |
+
|
| 155 |
+
02:10.600 --> 02:15.360
|
| 156 |
+
Y esta calle va a ser avenida, esto tiene
|
| 157 |
+
que ir adentro,
|
| 158 |
+
|
| 159 |
+
02:15.360 --> 02:22.200
|
| 160 |
+
avenida Insurgentes, n煤mero 187, coma.
|
| 161 |
+
|
| 162 |
+
02:22.200 --> 02:25.800
|
| 163 |
+
Y ponemos otra propiedad, que ser铆a ciudad.
|
| 164 |
+
|
| 165 |
+
02:25.800 --> 02:29.000
|
| 166 |
+
Y la ciudad va a ser Ciudad de M茅xico.
|
| 167 |
+
|
| 168 |
+
02:29.000 --> 02:33.320
|
| 169 |
+
Aqu铆 salimos y como estamos saliendo de
|
| 170 |
+
esta propiedad y
|
| 171 |
+
|
| 172 |
+
02:33.320 --> 02:36.600
|
| 173 |
+
vamos a colocar m谩s, ponemos una coma.
|
| 174 |
+
|
| 175 |
+
02:36.600 --> 02:39.360
|
| 176 |
+
Y ahora vamos a construir un m茅todo que se
|
| 177 |
+
va a llamar
|
| 178 |
+
|
| 179 |
+
02:39.360 --> 02:40.520
|
| 180 |
+
saludar.
|
| 181 |
+
|
| 182 |
+
02:40.520 --> 02:43.720
|
| 183 |
+
Y esto vamos a utilizar la estructura que
|
| 184 |
+
conocemos ya de
|
| 185 |
+
|
| 186 |
+
02:43.720 --> 02:45.920
|
| 187 |
+
poder generar una
|
| 188 |
+
funci贸n.
|
| 189 |
+
|
| 190 |
+
02:45.920 --> 02:49.440
|
| 191 |
+
Entonces el saludar lo que va a hacer es
|
| 192 |
+
console.log y va a
|
| 193 |
+
|
| 194 |
+
02:49.440 --> 02:52.520
|
| 195 |
+
decir pr谩cticamente hola mi nombre es y
|
| 196 |
+
vamos a hacer
|
| 197 |
+
|
| 198 |
+
02:52.520 --> 02:55.960
|
| 199 |
+
referencia al nombre de nuestro objeto
|
| 200 |
+
persona.
|
| 201 |
+
|
| 202 |
+
02:55.960 --> 02:59.360
|
| 203 |
+
Para poder utilizar esta propiedad como
|
| 204 |
+
variable,
|
| 205 |
+
|
| 206 |
+
02:59.360 --> 03:02.360
|
| 207 |
+
porque hay un valor aqu铆, tenemos que
|
| 208 |
+
utilizar estas
|
| 209 |
+
|
| 210 |
+
03:02.360 --> 03:05.120
|
| 211 |
+
comillas.
|
| 212 |
+
|
| 213 |
+
03:05.120 --> 03:12.720
|
| 214 |
+
Y con esto le ponemos hola, mi nombre es,
|
| 215 |
+
ponemos pesitos,
|
| 216 |
+
|
| 217 |
+
03:12.720 --> 03:20.520
|
| 218 |
+
y persona.nombre, porque estamos mandando
|
| 219 |
+
llamar el valor de la
|
| 220 |
+
|
| 221 |
+
03:20.520 --> 03:23.640
|
| 222 |
+
propiedad de nombre que le pertenece al
|
| 223 |
+
objeto de
|
| 224 |
+
|
| 225 |
+
03:23.640 --> 03:24.520
|
| 226 |
+
persona.
|
| 227 |
+
|
| 228 |
+
03:24.520 --> 03:28.760
|
| 229 |
+
As铆 que con esto aqu铆 ya nosotros podemos
|
| 230 |
+
pr谩cticamente
|
| 231 |
+
|
| 232 |
+
03:28.760 --> 03:31.200
|
| 233 |
+
imprimir el
|
| 234 |
+
nombre.
|
| 235 |
+
|
| 236 |
+
03:31.200 --> 03:33.760
|
| 237 |
+
Scope out de aqu铆, aqu铆 no est谩 marcando
|
| 238 |
+
aqu铆 un error,
|
| 239 |
+
|
| 240 |
+
03:33.760 --> 03:35.040
|
| 241 |
+
yo puse
|
| 242 |
+
nombre.
|
| 243 |
+
|
| 244 |
+
03:35.040 --> 03:38.340
|
| 245 |
+
Pero si vemos el error, aqu铆 nos dice que
|
| 246 |
+
no existe la
|
| 247 |
+
|
| 248 |
+
03:38.340 --> 03:39.560
|
| 249 |
+
propiedad
|
| 250 |
+
nombre.
|
| 251 |
+
|
| 252 |
+
03:39.560 --> 03:42.800
|
| 253 |
+
Entonces si venimos ac谩 podemos ver que
|
| 254 |
+
aqu铆 no se escribi贸
|
| 255 |
+
|
| 256 |
+
03:42.800 --> 03:46.120
|
| 257 |
+
bien nombre, ya, el error no existe.
|
| 258 |
+
|
| 259 |
+
03:46.120 --> 03:48.160
|
| 260 |
+
Entonces ponemos
|
| 261 |
+
coma.
|
| 262 |
+
|
| 263 |
+
03:48.160 --> 03:51.440
|
| 264 |
+
Y si guardamos, perfecto, ya tenemos aqu铆
|
| 265 |
+
la estructura de
|
| 266 |
+
|
| 267 |
+
03:51.440 --> 03:53.800
|
| 268 |
+
lo que ser铆a nuestro objeto persona.
|
| 269 |
+
|
| 270 |
+
03:53.800 --> 03:59.720
|
| 271 |
+
Vamos a imprimirla, console.log, y aqu铆
|
| 272 |
+
vamos a imprimir
|
| 273 |
+
|
| 274 |
+
03:59.720 --> 04:02.400
|
| 275 |
+
persona.coma.
|
| 276 |
+
|
| 277 |
+
04:02.400 --> 04:06.120
|
| 278 |
+
Si guardamos, podemos ver aqu铆 que ya
|
| 279 |
+
tenemos la impresi贸n de
|
| 280 |
+
|
| 281 |
+
04:06.120 --> 04:09.640
|
| 282 |
+
nuestro objeto, donde tenemos el nombre,
|
| 283 |
+
tenemos la direcci贸n,
|
| 284 |
+
|
| 285 |
+
04:09.640 --> 04:12.320
|
| 286 |
+
que es un peque帽o objeto, tenemos la edad,
|
| 287 |
+
|
| 288 |
+
04:12.320 --> 04:15.560
|
| 289 |
+
y tenemos aqu铆 nuestro m茅todo de saludar.
|
| 290 |
+
|
| 291 |
+
04:15.560 --> 04:20.280
|
| 292 |
+
Ahora que tenemos nuestro objeto, vamos a
|
| 293 |
+
imprimirlo.
|
| 294 |
+
|
| 295 |
+
04:20.280 --> 04:24.120
|
| 296 |
+
Ponemos persona y guardamos nuestro archivo.
|
| 297 |
+
|
| 298 |
+
04:24.120 --> 04:27.040
|
| 299 |
+
Y con esto ya podemos ver aqu铆 en terminal
|
| 300 |
+
que ya se imprime
|
| 301 |
+
|
| 302 |
+
04:27.040 --> 04:28.000
|
| 303 |
+
nuestro
|
| 304 |
+
objeto.
|
| 305 |
+
|
| 306 |
+
04:28.000 --> 04:31.000
|
| 307 |
+
Tenemos el nombre, tenemos la edad y
|
| 308 |
+
tenemos el objeto
|
| 309 |
+
|
| 310 |
+
04:31.000 --> 04:34.080
|
| 311 |
+
anitado, que es la direcci贸n, que viene
|
| 312 |
+
con calle y que viene
|
| 313 |
+
|
| 314 |
+
04:34.080 --> 04:35.080
|
| 315 |
+
con
|
| 316 |
+
ciudad.
|
| 317 |
+
|
| 318 |
+
04:35.080 --> 04:36.840
|
| 319 |
+
De igual forma, tenemos aqu铆 el m茅todo,
|
| 320 |
+
|
| 321 |
+
04:36.840 --> 04:39.600
|
| 322 |
+
que para poder entonces ver el m茅todo,
|
| 323 |
+
imprimirlo,
|
| 324 |
+
|
| 325 |
+
04:39.600 --> 04:45.520
|
| 326 |
+
simplemente vamos a llamar nuestro objeto
|
| 327 |
+
persona.saludar.
|
| 328 |
+
|
| 329 |
+
04:45.520 --> 04:48.240
|
| 330 |
+
Y como es una funci贸n, la cerramos con esto.
|
| 331 |
+
|
| 332 |
+
04:48.240 --> 04:49.520
|
| 333 |
+
Y
|
| 334 |
+
guardamos.
|
| 335 |
+
|
| 336 |
+
04:49.520 --> 04:51.680
|
| 337 |
+
Y tenemos aqu铆 un error que nos dice,
|
| 338 |
+
|
| 339 |
+
04:51.680 --> 04:58.080
|
| 340 |
+
la referencia del error es log is not
|
| 341 |
+
defined en la l铆nea 24.
|
| 342 |
+
|
| 343 |
+
04:58.080 --> 05:00.600
|
| 344 |
+
Si venimos aqu铆, podemos ver que la l铆nea 24,
|
| 345 |
+
|
| 346 |
+
05:00.600 --> 05:03.800
|
| 347 |
+
tenemos nuestro console, coma y un espacio.
|
| 348 |
+
|
| 349 |
+
05:03.800 --> 05:05.120
|
| 350 |
+
Evidentemente, esto no est谩
|
| 351 |
+
bien.
|
| 352 |
+
|
| 353 |
+
05:05.120 --> 05:06.600
|
| 354 |
+
Ponemos el punto,
|
| 355 |
+
log.
|
| 356 |
+
|
| 357 |
+
05:06.600 --> 05:09.440
|
| 358 |
+
Entonces, si guardamos, ya tenemos nuestro
|
| 359 |
+
objeto.
|
| 360 |
+
|
| 361 |
+
05:09.440 --> 05:14.200
|
| 362 |
+
Y ya tenemos aqu铆 entonces nuestro m茅todo
|
| 363 |
+
que dice, hola,
|
| 364 |
+
|
| 365 |
+
05:14.200 --> 05:18.740
|
| 366 |
+
mi nombre es John, que hace referencia al
|
| 367 |
+
nombre de la
|
| 368 |
+
|
| 369 |
+
05:18.740 --> 05:23.200
|
| 370 |
+
propiedad de nuestro objeto,
|
| 371 |
+
John.
|
| 372 |
+
|
| 373 |
+
05:23.200 --> 05:25.280
|
| 374 |
+
Ahora lo que vamos a hacer es un perfecto.
|
| 375 |
+
|
| 376 |
+
05:25.280 --> 05:27.640
|
| 377 |
+
驴Qu茅 pasa si ya tengo este objeto
|
| 378 |
+
creado?
|
| 379 |
+
|
| 380 |
+
05:27.640 --> 05:30.440
|
| 381 |
+
Pero en el camino me doy cuenta que
|
| 382 |
+
necesito agregar o nuevas
|
| 383 |
+
|
| 384 |
+
05:30.440 --> 05:32.920
|
| 385 |
+
propiedades o nuevos
|
| 386 |
+
m茅todos.
|
| 387 |
+
|
| 388 |
+
05:32.920 --> 05:36.560
|
| 389 |
+
Entonces, para poderlo hacer es tan
|
| 390 |
+
sencillo como venir,
|
| 391 |
+
|
| 392 |
+
05:36.560 --> 05:41.480
|
| 393 |
+
tomar nuestro objeto persona y poder punto
|
| 394 |
+
y agregarle la nueva
|
| 395 |
+
|
| 396 |
+
05:41.480 --> 05:45.360
|
| 397 |
+
propiedad, que en este caso va a ser tel茅fono.
|
| 398 |
+
|
| 399 |
+
05:45.360 --> 05:49.000
|
| 400 |
+
Y el tel茅fono va a ser igual a, y aqu铆 es
|
| 401 |
+
donde vamos a poner
|
| 402 |
+
|
| 403 |
+
05:49.000 --> 05:50.760
|
| 404 |
+
la informaci贸n que estamos requiriendo,
|
| 405 |
+
que en este caso
|
| 406 |
+
|
| 407 |
+
05:50.760 --> 05:57.280
|
| 408 |
+
va a ser 555, 555, 555,
|
| 409 |
+
5.
|
| 410 |
+
|
| 411 |
+
05:57.280 --> 05:57.840
|
| 412 |
+
Perfecto.
|
| 413 |
+
|
| 414 |
+
05:57.840 --> 06:00.240
|
| 415 |
+
Y cerramos con punto y
|
| 416 |
+
coma.
|
| 417 |
+
|
| 418 |
+
06:00.240 --> 06:06.400
|
| 419 |
+
Para poder asegurarnos que esto se guarde,
|
| 420 |
+
console.log.
|
| 421 |
+
|
| 422 |
+
06:06.400 --> 06:12.920
|
| 423 |
+
Entonces, aqu铆 mandamos llamar persona.
|
| 424 |
+
tel茅fono.coma.
|
| 425 |
+
|
| 426 |
+
06:12.920 --> 06:14.720
|
| 427 |
+
Guardamos.
|
| 428 |
+
|
| 429 |
+
06:14.720 --> 06:17.360
|
| 430 |
+
Y podemos ver aqu铆 que ya se imprime
|
| 431 |
+
autom谩ticamente nuestro
|
| 432 |
+
|
| 433 |
+
06:17.360 --> 06:18.280
|
| 434 |
+
tel茅fono.
|
| 435 |
+
|
| 436 |
+
06:18.280 --> 06:21.200
|
| 437 |
+
Si venimos ac谩 y abrimos nuestro objeto,
|
| 438 |
+
|
| 439 |
+
06:21.200 --> 06:24.120
|
| 440 |
+
vemos que ya se est谩 agregando esta propiedad.
|
| 441 |
+
|
| 442 |
+
06:24.120 --> 06:25.960
|
| 443 |
+
Ahora, esto es para agregar propiedades.
|
| 444 |
+
|
| 445 |
+
06:25.960 --> 06:29.000
|
| 446 |
+
Pero si yo quiero agregar un nuevo m茅todo,
|
| 447 |
+
|
| 448 |
+
06:29.000 --> 06:30.520
|
| 449 |
+
lo vamos a hacer de esta
|
| 450 |
+
forma.
|
| 451 |
+
|
| 452 |
+
06:30.520 --> 06:34.400
|
| 453 |
+
Llegamos aqu铆, de igual forma, tomamos
|
| 454 |
+
nuestro objeto persona
|
| 455 |
+
|
| 456 |
+
06:34.400 --> 06:38.800
|
| 457 |
+
punto y agregamos la propiedad como si
|
| 458 |
+
fuera una funci贸n.
|
| 459 |
+
|
| 460 |
+
06:38.800 --> 06:42.760
|
| 461 |
+
Despedir, que va a ser igual a una funci贸n
|
| 462 |
+
an贸nima.
|
| 463 |
+
|
| 464 |
+
06:42.760 --> 06:46.760
|
| 465 |
+
Y esta funci贸n, esta arrow function, m谩s bien.
|
| 466 |
+
|
| 467 |
+
06:46.760 --> 06:47.680
|
| 468 |
+
Tenemos
|
| 469 |
+
esto.
|
| 470 |
+
|
| 471 |
+
06:47.680 --> 06:50.640
|
| 472 |
+
Y aqu铆 vamos a agregar lo que estamos
|
| 473 |
+
buscando.
|
| 474 |
+
|
| 475 |
+
06:50.640 --> 06:52.600
|
| 476 |
+
Console.log.
|
| 477 |
+
|
| 478 |
+
06:52.600 --> 06:59.200
|
| 479 |
+
Y lo que vamos a poner aqu铆 va a ser un adi贸s.
|
| 480 |
+
|
| 481 |
+
07:02.720 --> 07:05.360
|
| 482 |
+
Vamos a guardar nuestro
|
| 483 |
+
objeto.
|
| 484 |
+
|
| 485 |
+
07:05.360 --> 07:09.600
|
| 486 |
+
Y ahora, como lo hicimos en la parte de
|
| 487 |
+
ac谩 con este m茅todo,
|
| 488 |
+
|
| 489 |
+
07:09.600 --> 07:11.080
|
| 490 |
+
en vez de utilizar un
|
| 491 |
+
console.log,
|
| 492 |
+
|
| 493 |
+
07:11.080 --> 07:15.440
|
| 494 |
+
simplemente vamos a poner persona punto
|
| 495 |
+
despedir.
|
| 496 |
+
|
| 497 |
+
07:20.840 --> 07:21.940
|
| 498 |
+
Guardamos.
|
| 499 |
+
|
| 500 |
+
07:21.940 --> 07:25.600
|
| 501 |
+
Y tenemos ya aqu铆 nuestra funci贸n que
|
| 502 |
+
estamos agregando.
|
| 503 |
+
|
| 504 |
+
07:25.600 --> 07:27.920
|
| 505 |
+
Nuestro nuevo m茅todo que se est谩 agregando
|
| 506 |
+
si abrimos nuestro
|
| 507 |
+
|
| 508 |
+
07:27.920 --> 07:28.440
|
| 509 |
+
objeto.
|
| 510 |
+
|
| 511 |
+
07:28.440 --> 07:32.280
|
| 512 |
+
Podemos ver ahora que tenemos el despedir
|
| 513 |
+
y que tenemos el
|
| 514 |
+
|
| 515 |
+
07:32.280 --> 07:35.760
|
| 516 |
+
saludar, que se est谩n agregando de forma
|
| 517 |
+
independiente a
|
| 518 |
+
|
| 519 |
+
07:35.760 --> 07:39.160
|
| 520 |
+
nuestro objeto una vez que el objeto ya
|
| 521 |
+
fue creado.
|
| 522 |
+
|
| 523 |
+
07:39.160 --> 07:41.320
|
| 524 |
+
Ahora, t煤 te puedes preguntar, como perfecto,
|
| 525 |
+
Diego,
|
| 526 |
+
|
| 527 |
+
07:41.320 --> 07:43.480
|
| 528 |
+
ya s茅 c贸mo generar un
|
| 529 |
+
objeto.
|
| 530 |
+
|
| 531 |
+
07:43.480 --> 07:45.880
|
| 532 |
+
Ahora ya s茅 una vez que el objeto fue creado,
|
| 533 |
+
|
| 534 |
+
07:45.880 --> 07:48.280
|
| 535 |
+
si tengo que agregar ciertas propiedades o
|
| 536 |
+
tengo que agregar
|
| 537 |
+
|
| 538 |
+
07:48.280 --> 07:50.520
|
| 539 |
+
ciertos m茅todos, c贸mo
|
| 540 |
+
hacerlo.
|
| 541 |
+
|
| 542 |
+
07:50.520 --> 07:52.600
|
| 543 |
+
Pero, 驴qu茅 pasa si de repente ya no tengo
|
| 544 |
+
que agregar,
|
| 545 |
+
|
| 546 |
+
07:52.600 --> 07:55.400
|
| 547 |
+
sino m谩s bien tengo que borrar propiedades
|
| 548 |
+
y m茅todos?
|
| 549 |
+
|
| 550 |
+
07:55.400 --> 07:58.360
|
| 551 |
+
La forma de poder borrar propiedades y
|
| 552 |
+
m茅todos es
|
| 553 |
+
|
| 554 |
+
07:58.360 --> 08:01.240
|
| 555 |
+
llegamos y vamos a utilizar una palabra
|
| 556 |
+
reservada que se llama
|
| 557 |
+
|
| 558 |
+
08:01.240 --> 08:02.400
|
| 559 |
+
deletes.
|
| 560 |
+
|
| 561 |
+
08:02.400 --> 08:06.280
|
| 562 |
+
Vamos a mandar llamar nuestro objeto con
|
| 563 |
+
el punto y vamos
|
| 564 |
+
|
| 565 |
+
08:06.280 --> 08:10.040
|
| 566 |
+
a mandar llamar la propiedad que
|
| 567 |
+
necesitamos borrar.
|
| 568 |
+
|
| 569 |
+
08:10.040 --> 08:12.920
|
| 570 |
+
Tel茅fono.
|
| 571 |
+
|
| 572 |
+
08:12.920 --> 08:17.760
|
| 573 |
+
Si guardamos, en este momento, si yo vengo
|
| 574 |
+
aqu铆 y abro,
|
| 575 |
+
|
| 576 |
+
08:17.760 --> 08:20.280
|
| 577 |
+
nos vamos a dar cuenta que ya no tengo
|
| 578 |
+
nuestra propiedad de
|
| 579 |
+
|
| 580 |
+
08:20.280 --> 08:21.360
|
| 581 |
+
tel茅fono en este
|
| 582 |
+
momento.
|
| 583 |
+
|
| 584 |
+
08:21.360 --> 08:24.480
|
| 585 |
+
Ya no tiene caso que yo utilice un control
|
| 586 |
+
log para poder verlo.
|
| 587 |
+
|
| 588 |
+
08:24.480 --> 08:27.480
|
| 589 |
+
Yo ya tengo aqu铆, como al inicio estoy
|
| 590 |
+
mandando llamar este
|
| 591 |
+
|
| 592 |
+
08:27.480 --> 08:30.720
|
| 593 |
+
objeto, puedo ver que la propiedad ya no
|
| 594 |
+
existe.
|
| 595 |
+
|
| 596 |
+
08:30.720 --> 08:33.560
|
| 597 |
+
Si queremos borrar ahora un m茅todo, va a
|
| 598 |
+
ser lo mismo.
|
| 599 |
+
|
| 600 |
+
08:33.560 --> 08:37.760
|
| 601 |
+
Vamos a utilizar deletes punto, m谩s bien,
|
| 602 |
+
|
| 603 |
+
08:37.760 --> 08:43.960
|
| 604 |
+
deletes espacio persona punto y la
|
| 605 |
+
propiedad que quiero borrar
|
| 606 |
+
|
| 607 |
+
08:43.960 --> 08:45.800
|
| 608 |
+
es
|
| 609 |
+
pedir.
|
| 610 |
+
|
| 611 |
+
08:45.800 --> 08:46.920
|
| 612 |
+
Punto y
|
| 613 |
+
coma.
|
| 614 |
+
|
| 615 |
+
08:46.920 --> 08:49.280
|
| 616 |
+
Si guardo nuestro c贸digo y venimos aqu铆,
|
| 617 |
+
|
| 618 |
+
08:49.280 --> 08:51.560
|
| 619 |
+
que est谩 imprimiendo tambi茅n el c贸digo,
|
| 620 |
+
|
| 621 |
+
08:51.560 --> 08:55.600
|
| 622 |
+
podemos ver que tampoco ya existe el
|
| 623 |
+
m茅todo de despedir,
|
| 624 |
+
|
| 625 |
+
08:55.600 --> 08:58.800
|
| 626 |
+
solo existe el m茅todo de saludar y existen
|
| 627 |
+
los par谩metros que
|
| 628 |
+
|
| 629 |
+
08:58.800 --> 09:01.240
|
| 630 |
+
utilizamos al momento de que creamos
|
| 631 |
+
nuestro objeto,
|
| 632 |
+
|
| 633 |
+
09:01.240 --> 09:03.760
|
| 634 |
+
que viene la direcci贸n, que es un objeto
|
| 635 |
+
anidado,
|
| 636 |
+
|
| 637 |
+
09:03.760 --> 09:20.800
|
| 638 |
+
viene la edad y viene el
|
| 639 |
+
nombre.
|
| 640 |
+
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/02-Lecturas recomendadas.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
https://github.com/platzi/basico-js
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/02-Resumen.html
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/02-index_1e469f9b-6fdc-4de4-9e66-cba3a484b09b.js
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*
|
| 2 |
+
|
| 3 |
+
estructura de datos
|
| 4 |
+
|
| 5 |
+
key / value
|
| 6 |
+
|
| 7 |
+
objeto {
|
| 8 |
+
propiedad: valor,
|
| 9 |
+
propiedad: valor,
|
| 10 |
+
propiedad: valor
|
| 11 |
+
Metodos()
|
| 12 |
+
}
|
| 13 |
+
|
| 14 |
+
*/
|
| 15 |
+
|
| 16 |
+
const persona = {
|
| 17 |
+
nombre: "John",
|
| 18 |
+
edad: 30,
|
| 19 |
+
direccion: {
|
| 20 |
+
calle: "Av Insurgentre 187",
|
| 21 |
+
ciudad: "CDMX",
|
| 22 |
+
},
|
| 23 |
+
saludar() {
|
| 24 |
+
console.log(`hola, mi nombre es ${persona.nombre}`);
|
| 25 |
+
},
|
| 26 |
+
};
|
| 27 |
+
|
| 28 |
+
// Imprimamos el objeto
|
| 29 |
+
|
| 30 |
+
console.log(persona);
|
| 31 |
+
|
| 32 |
+
// Imprimamos la propiedad nombre
|
| 33 |
+
|
| 34 |
+
console.log(persona.nombre);
|
| 35 |
+
|
| 36 |
+
// Imprimamos el metodo saludar
|
| 37 |
+
|
| 38 |
+
persona.saludar();
|
| 39 |
+
|
| 40 |
+
//
|
| 41 |
+
//
|
| 42 |
+
//
|
| 43 |
+
//
|
| 44 |
+
//
|
| 45 |
+
// Agrergamos una propiedad al objeto en este caso telefono
|
| 46 |
+
|
| 47 |
+
persona.telefono = "555-555-5555";
|
| 48 |
+
|
| 49 |
+
console.log(persona.telefono);
|
| 50 |
+
|
| 51 |
+
// Agregamos un metodo al objeto
|
| 52 |
+
|
| 53 |
+
persona.despedir = () => {
|
| 54 |
+
console.log("Adios");
|
| 55 |
+
};
|
| 56 |
+
|
| 57 |
+
persona.despedir();
|
| 58 |
+
|
| 59 |
+
// Acceder a una propiedad de un objeto anidado / Metodo
|
| 60 |
+
|
| 61 |
+
console.log(persona.direccion.calle);
|
| 62 |
+
|
| 63 |
+
//
|
| 64 |
+
//
|
| 65 |
+
//
|
| 66 |
+
//
|
| 67 |
+
//
|
| 68 |
+
//
|
| 69 |
+
// Eliminar una propiedad de un objeto
|
| 70 |
+
|
| 71 |
+
delete persona.telefono;
|
| 72 |
+
|
| 73 |
+
console.log(persona.telefono);
|
| 74 |
+
|
| 75 |
+
// Eliminar un metodo de un objeto
|
| 76 |
+
|
| 77 |
+
delete persona.despedir;
|
| 78 |
+
|
| 79 |
+
console.log(persona.despedir());
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/03-Funci贸n constructora y gesti贸n de instancias en JavaScript.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:7f84ee392c6ec6b1d4c2a52767b3d6365cf5d80ecaf63089112c46e2efc20381
|
| 3 |
+
size 128896729
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/03-Funci贸n constructora y gesti贸n de instancias en JavaScript.vtt
ADDED
|
@@ -0,0 +1,873 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
WEBVTT
|
| 2 |
+
|
| 3 |
+
00:00.000 --> 00:04.120
|
| 4 |
+
Como ya vimos, al momento de trabajar objetos,
|
| 5 |
+
por ejemplo,
|
| 6 |
+
|
| 7 |
+
00:04.120 --> 00:11.320
|
| 8 |
+
el objeto persona, construimos uno que se
|
| 9 |
+
llama persona,
|
| 10 |
+
|
| 11 |
+
00:11.320 --> 00:13.640
|
| 12 |
+
que va a ser igual a la estructura a la
|
| 13 |
+
cual ya estamos
|
| 14 |
+
|
| 15 |
+
00:13.640 --> 00:15.120
|
| 16 |
+
familiarizado.
|
| 17 |
+
|
| 18 |
+
00:15.120 --> 00:19.280
|
| 19 |
+
Tenemos el nombre igual a
|
| 20 |
+
Diego.
|
| 21 |
+
|
| 22 |
+
00:19.280 --> 00:20.120
|
| 23 |
+
Todo esto
|
| 24 |
+
funciona.
|
| 25 |
+
|
| 26 |
+
00:20.120 --> 00:26.400
|
| 27 |
+
Tenemos apellido igual a de
|
| 28 |
+
granda.
|
| 29 |
+
|
| 30 |
+
00:26.400 --> 00:28.600
|
| 31 |
+
Y podremos tener m谩s
|
| 32 |
+
propiedades.
|
| 33 |
+
|
| 34 |
+
00:28.600 --> 00:32.160
|
| 35 |
+
Pero, 驴qu茅 pasa si, por ejemplo, ahorita
|
| 36 |
+
ya tenemos un objeto y
|
| 37 |
+
|
| 38 |
+
00:32.160 --> 00:36.400
|
| 39 |
+
nosotros necesitamos construir de este
|
| 40 |
+
objeto 500 personas?
|
| 41 |
+
|
| 42 |
+
00:36.400 --> 00:37.820
|
| 43 |
+
驴Qu茅 es lo que tendr铆as que
|
| 44 |
+
hacer?
|
| 45 |
+
|
| 46 |
+
00:37.820 --> 00:40.280
|
| 47 |
+
驴Tendr铆as que copiar y pegar este c贸digo
|
| 48 |
+
500 veces para
|
| 49 |
+
|
| 50 |
+
00:40.280 --> 00:42.240
|
| 51 |
+
poderlo hacer nada m谩s de que cambias el
|
| 52 |
+
nombre?
|
| 53 |
+
|
| 54 |
+
00:42.240 --> 00:43.280
|
| 55 |
+
Esto no es
|
| 56 |
+
funcional.
|
| 57 |
+
|
| 58 |
+
00:43.280 --> 00:44.880
|
| 59 |
+
Esto no es
|
| 60 |
+
escalable.
|
| 61 |
+
|
| 62 |
+
00:44.880 --> 00:48.920
|
| 63 |
+
Para poder asegurarnos de que nosotros
|
| 64 |
+
tengamos o podamos
|
| 65 |
+
|
| 66 |
+
00:48.920 --> 00:52.920
|
| 67 |
+
construir la cantidad de objetos que
|
| 68 |
+
necesitemos sin tener que
|
| 69 |
+
|
| 70 |
+
00:52.920 --> 00:56.080
|
| 71 |
+
estar copiando, pegando y asegurarnos
|
| 72 |
+
cambiar el nombre,
|
| 73 |
+
|
| 74 |
+
00:56.080 --> 00:58.740
|
| 75 |
+
tenemos que utilizar una funci贸n que se
|
| 76 |
+
llama funci贸n
|
| 77 |
+
|
| 78 |
+
00:58.740 --> 01:01.840
|
| 79 |
+
constructora, que el 煤nico objetivo que
|
| 80 |
+
tiene es poder
|
| 81 |
+
|
| 82 |
+
01:01.840 --> 01:03.320
|
| 83 |
+
construir
|
| 84 |
+
objetos.
|
| 85 |
+
|
| 86 |
+
01:03.320 --> 01:07.080
|
| 87 |
+
Y para esto, como ya te coment茅, esto es
|
| 88 |
+
una funci贸n.
|
| 89 |
+
|
| 90 |
+
01:07.080 --> 01:09.960
|
| 91 |
+
Y esta funci贸n va a tener la misma
|
| 92 |
+
estructura de las
|
| 93 |
+
|
| 94 |
+
01:09.960 --> 01:12.040
|
| 95 |
+
funciones de las cuales ya estamos
|
| 96 |
+
familiarizados,
|
| 97 |
+
|
| 98 |
+
01:12.040 --> 01:15.560
|
| 99 |
+
nada m谩s que el nombre de la funci贸n va a
|
| 100 |
+
ser el nombre de
|
| 101 |
+
|
| 102 |
+
01:15.560 --> 01:17.880
|
| 103 |
+
nuestro objeto que tiene que construir.
|
| 104 |
+
|
| 105 |
+
01:17.880 --> 01:22.120
|
| 106 |
+
En este caso, va a tener una peculiaridad
|
| 107 |
+
que va a iniciar
|
| 108 |
+
|
| 109 |
+
01:22.120 --> 01:25.880
|
| 110 |
+
con may煤scula esa
|
| 111 |
+
funci贸n.
|
| 112 |
+
|
| 113 |
+
01:25.880 --> 01:27.800
|
| 114 |
+
Ser铆a en este queremos construir, por ejemplo,
|
| 115 |
+
|
| 116 |
+
01:27.800 --> 01:29.360
|
| 117 |
+
personas.
|
| 118 |
+
|
| 119 |
+
01:29.360 --> 01:32.600
|
| 120 |
+
Entonces, nuestra funci贸n constructora va
|
| 121 |
+
a iniciar con
|
| 122 |
+
|
| 123 |
+
01:32.600 --> 01:36.400
|
| 124 |
+
function may煤scula
|
| 125 |
+
persona.
|
| 126 |
+
|
| 127 |
+
01:36.400 --> 01:39.680
|
| 128 |
+
Y aqu铆 continuamos como si estuvi茅ramos
|
| 129 |
+
haciendo una
|
| 130 |
+
|
| 131 |
+
01:39.680 --> 01:43.800
|
| 132 |
+
funci贸n en el cual tenemos los par茅ntesis
|
| 133 |
+
y tenemos nuestros
|
| 134 |
+
|
| 135 |
+
01:43.800 --> 01:44.400
|
| 136 |
+
corchetes.
|
| 137 |
+
|
| 138 |
+
01:44.400 --> 01:47.920
|
| 139 |
+
Y adentro de los par茅ntesis vamos a
|
| 140 |
+
agregar estas
|
| 141 |
+
|
| 142 |
+
01:47.920 --> 01:49.600
|
| 143 |
+
propiedades que
|
| 144 |
+
necesitamos.
|
| 145 |
+
|
| 146 |
+
01:49.600 --> 01:51.400
|
| 147 |
+
Porque cuando vamos a hacer la funci贸n,
|
| 148 |
+
|
| 149 |
+
01:51.400 --> 01:54.440
|
| 150 |
+
pues tenemos que agregarle las propiedades
|
| 151 |
+
para que entonces
|
| 152 |
+
|
| 153 |
+
01:54.440 --> 01:57.200
|
| 154 |
+
la funci贸n pueda construir nuestro objeto.
|
| 155 |
+
|
| 156 |
+
01:57.200 --> 02:01.000
|
| 157 |
+
Entonces, aqu铆 necesitamos, por ejemplo,
|
| 158 |
+
el nombre.
|
| 159 |
+
|
| 160 |
+
02:01.000 --> 02:03.800
|
| 161 |
+
Necesitamos el
|
| 162 |
+
apellido.
|
| 163 |
+
|
| 164 |
+
02:03.800 --> 02:06.880
|
| 165 |
+
Y necesitamos, vamos a ponerle una edad
|
| 166 |
+
para poder construir
|
| 167 |
+
|
| 168 |
+
02:06.880 --> 02:08.920
|
| 169 |
+
nuestra
|
| 170 |
+
persona.
|
| 171 |
+
|
| 172 |
+
02:08.920 --> 02:13.360
|
| 173 |
+
Entonces, tenemos una funci贸n que tiene el
|
| 174 |
+
nombre del objeto
|
| 175 |
+
|
| 176 |
+
02:13.360 --> 02:16.440
|
| 177 |
+
que queremos empezar a construir de forma
|
| 178 |
+
mucho m谩s masiva,
|
| 179 |
+
|
| 180 |
+
02:16.440 --> 02:18.440
|
| 181 |
+
que tiene que iniciar con may煤scula.
|
| 182 |
+
|
| 183 |
+
02:18.440 --> 02:22.600
|
| 184 |
+
Y aqu铆 vamos a pasarle como par谩metros las
|
| 185 |
+
propiedades que
|
| 186 |
+
|
| 187 |
+
02:22.600 --> 02:24.120
|
| 188 |
+
van a construir ese
|
| 189 |
+
objeto.
|
| 190 |
+
|
| 191 |
+
02:24.120 --> 02:28.040
|
| 192 |
+
Entonces, si venimos aqu铆, vamos a poner
|
| 193 |
+
una estructura
|
| 194 |
+
|
| 195 |
+
02:28.040 --> 02:30.680
|
| 196 |
+
similar donde tendr铆amos el
|
| 197 |
+
nombre.
|
| 198 |
+
|
| 199 |
+
02:30.680 --> 02:32.400
|
| 200 |
+
Y el nombre ser铆a
|
| 201 |
+
igual.
|
| 202 |
+
|
| 203 |
+
02:32.400 --> 02:36.480
|
| 204 |
+
Esa es una funci贸n, recuerdan, no es
|
| 205 |
+
similar a la forma en la
|
| 206 |
+
|
| 207 |
+
02:36.480 --> 02:39.920
|
| 208 |
+
que construimos un objeto, sino esto va a
|
| 209 |
+
construir estos
|
| 210 |
+
|
| 211 |
+
02:39.920 --> 02:40.880
|
| 212 |
+
objetos.
|
| 213 |
+
|
| 214 |
+
02:40.880 --> 02:44.480
|
| 215 |
+
As铆 que ponemos nombre igual a nombre,
|
| 216 |
+
|
| 217 |
+
02:44.480 --> 02:47.880
|
| 218 |
+
que va a ser referente a este par谩metro
|
| 219 |
+
que estamos nosotros
|
| 220 |
+
|
| 221 |
+
02:47.880 --> 02:49.560
|
| 222 |
+
utilizando, punto y
|
| 223 |
+
coma.
|
| 224 |
+
|
| 225 |
+
02:49.560 --> 02:54.100
|
| 226 |
+
Pero aqu铆 tenemos una peculiaridad que
|
| 227 |
+
tendremos que
|
| 228 |
+
|
| 229 |
+
02:54.100 --> 02:58.840
|
| 230 |
+
iniciar con el this, punto, porque el this
|
| 231 |
+
hace referencia
|
| 232 |
+
|
| 233 |
+
02:58.840 --> 03:01.040
|
| 234 |
+
a este
|
| 235 |
+
objeto.
|
| 236 |
+
|
| 237 |
+
03:01.040 --> 03:04.920
|
| 238 |
+
Entonces, ponemos este objeto, el nombre
|
| 239 |
+
de este objeto va a
|
| 240 |
+
|
| 241 |
+
03:04.920 --> 03:08.360
|
| 242 |
+
ser igual al nombre que nos pasen como
|
| 243 |
+
par谩metro.
|
| 244 |
+
|
| 245 |
+
03:08.360 --> 03:10.320
|
| 246 |
+
Y con eso terminamos la
|
| 247 |
+
estructura.
|
| 248 |
+
|
| 249 |
+
03:10.320 --> 03:11.400
|
| 250 |
+
Vamos en el
|
| 251 |
+
otro.
|
| 252 |
+
|
| 253 |
+
03:11.400 --> 03:17.000
|
| 254 |
+
Ser铆a this, punto, apellido, igual a apellido,
|
| 255 |
+
|
| 256 |
+
03:17.000 --> 03:20.240
|
| 257 |
+
que hace referencia al par谩metro que nos
|
| 258 |
+
van a pasar.
|
| 259 |
+
|
| 260 |
+
03:20.240 --> 03:27.680
|
| 261 |
+
Y terminamos con this, punto,
|
| 262 |
+
edad,
|
| 263 |
+
|
| 264 |
+
03:27.680 --> 03:30.360
|
| 265 |
+
que va a ser igual a edad como el
|
| 266 |
+
par谩metro que nos va a
|
| 267 |
+
|
| 268 |
+
03:30.360 --> 03:31.280
|
| 269 |
+
pasar.
|
| 270 |
+
|
| 271 |
+
03:31.280 --> 03:34.860
|
| 272 |
+
Entonces, esta es la estructura de c贸mo
|
| 273 |
+
construimos una funci贸n
|
| 274 |
+
|
| 275 |
+
03:34.860 --> 03:35.960
|
| 276 |
+
constructora.
|
| 277 |
+
|
| 278 |
+
03:35.960 --> 03:39.680
|
| 279 |
+
Si nosotros queremos ahora empezar a
|
| 280 |
+
construir objetos
|
| 281 |
+
|
| 282 |
+
03:39.680 --> 03:42.800
|
| 283 |
+
utilizando esta funci贸n, la forma de
|
| 284 |
+
hacerlo ser铆a la
|
| 285 |
+
|
| 286 |
+
03:42.800 --> 03:44.060
|
| 287 |
+
siguiente.
|
| 288 |
+
|
| 289 |
+
03:44.060 --> 03:45.860
|
| 290 |
+
Tenemos que generar una
|
| 291 |
+
instancia.
|
| 292 |
+
|
| 293 |
+
03:45.860 --> 03:49.800
|
| 294 |
+
As铆 se le llama a todos los objetos que
|
| 295 |
+
vengan de esta
|
| 296 |
+
|
| 297 |
+
03:49.800 --> 03:52.480
|
| 298 |
+
funci贸n constructora, se van a llamar
|
| 299 |
+
instancias.
|
| 300 |
+
|
| 301 |
+
03:52.480 --> 03:55.380
|
| 302 |
+
Y la forma de hacerlo es, empezamos con un
|
| 303 |
+
const,
|
| 304 |
+
|
| 305 |
+
03:55.380 --> 03:58.740
|
| 306 |
+
que va a ser persona1, por
|
| 307 |
+
ejemplo.
|
| 308 |
+
|
| 309 |
+
03:58.740 --> 04:01.400
|
| 310 |
+
Y esto vamos a utilizar una palabra
|
| 311 |
+
reservada que se llama
|
| 312 |
+
|
| 313 |
+
04:01.400 --> 04:02.420
|
| 314 |
+
new.
|
| 315 |
+
|
| 316 |
+
04:02.420 --> 04:05.280
|
| 317 |
+
Y despu茅s mandamos llamar nuestra funci贸n
|
| 318 |
+
constructora
|
| 319 |
+
|
| 320 |
+
04:05.280 --> 04:07.240
|
| 321 |
+
con los par谩metros que nos interesan.
|
| 322 |
+
|
| 323 |
+
04:07.240 --> 04:10.520
|
| 324 |
+
Entonces, nuestra primera persona se va a
|
| 325 |
+
llamar Juan,
|
| 326 |
+
|
| 327 |
+
04:10.520 --> 04:15.800
|
| 328 |
+
coma, su apellido va a ser P茅rez, coma,
|
| 329 |
+
|
| 330 |
+
04:15.800 --> 04:19.400
|
| 331 |
+
y su edad va a ser 30 a帽os, punto y coma,
|
| 332 |
+
|
| 333 |
+
04:19.400 --> 04:22.840
|
| 334 |
+
para poder ver que esta persona se gener贸
|
| 335 |
+
o se cre贸 de forma
|
| 336 |
+
|
| 337 |
+
04:22.840 --> 04:25.760
|
| 338 |
+
correcta con su punto
|
| 339 |
+
log.
|
| 340 |
+
|
| 341 |
+
04:25.760 --> 04:30.880
|
| 342 |
+
Entonces, aqu铆 vamos a mandar llamar persona1,
|
| 343 |
+
punto y coma.
|
| 344 |
+
|
| 345 |
+
04:30.880 --> 04:33.440
|
| 346 |
+
Ahora, si guardamos nuestro
|
| 347 |
+
c贸digo,
|
| 348 |
+
|
| 349 |
+
04:33.440 --> 04:36.000
|
| 350 |
+
podemos ver que aqu铆 ya no est谩 regresando.
|
| 351 |
+
|
| 352 |
+
04:36.000 --> 04:39.120
|
| 353 |
+
Hay una funci贸n, o m谩s bien hay un objeto
|
| 354 |
+
que se llama persona.
|
| 355 |
+
|
| 356 |
+
04:39.120 --> 04:42.800
|
| 357 |
+
Pero si lo abrimos, podemos ver que este
|
| 358 |
+
objeto persona se
|
| 359 |
+
|
| 360 |
+
04:42.800 --> 04:44.920
|
| 361 |
+
llama Juan, con el apellido
|
| 362 |
+
P茅rez,
|
| 363 |
+
|
| 364 |
+
04:44.920 --> 04:47.600
|
| 365 |
+
y tiene la edad de 30
|
| 366 |
+
a帽os.
|
| 367 |
+
|
| 368 |
+
04:47.600 --> 04:48.240
|
| 369 |
+
Perfecto.
|
| 370 |
+
|
| 371 |
+
04:48.240 --> 04:50.560
|
| 372 |
+
Ahora, sabemos que ya podemos generar
|
| 373 |
+
instancias.
|
| 374 |
+
|
| 375 |
+
04:50.560 --> 04:53.640
|
| 376 |
+
Pero entonces, 驴cu谩l es el beneficio de
|
| 377 |
+
hacerlo as铆?
|
| 378 |
+
|
| 379 |
+
04:53.640 --> 04:54.960
|
| 380 |
+
A hacerlo as铆,
|
| 381 |
+
驴no?
|
| 382 |
+
|
| 383 |
+
04:54.960 --> 04:56.080
|
| 384 |
+
Como copiar y
|
| 385 |
+
pegar.
|
| 386 |
+
|
| 387 |
+
04:56.080 --> 04:58.560
|
| 388 |
+
Bueno, el beneficio es que la siguiente
|
| 389 |
+
vez que yo quisiera
|
| 390 |
+
|
| 391 |
+
04:58.560 --> 05:02.880
|
| 392 |
+
tener otra persona nueva, va a ser una
|
| 393 |
+
constancia.
|
| 394 |
+
|
| 395 |
+
05:02.880 --> 05:05.160
|
| 396 |
+
Esta persona va a ser
|
| 397 |
+
persona2.
|
| 398 |
+
|
| 399 |
+
05:05.160 --> 05:07.720
|
| 400 |
+
Y vamos a copiar la misma estructura con
|
| 401 |
+
la reservada
|
| 402 |
+
|
| 403 |
+
05:07.720 --> 05:10.520
|
| 404 |
+
new,
|
| 405 |
+
persona.
|
| 406 |
+
|
| 407 |
+
05:10.520 --> 05:13.520
|
| 408 |
+
Y entonces, ahora, en vez de generar esta
|
| 409 |
+
estructura o
|
| 410 |
+
|
| 411 |
+
05:13.520 --> 05:16.720
|
| 412 |
+
esta estructura, simplemente mandamos
|
| 413 |
+
llamar nuestra funci贸n
|
| 414 |
+
|
| 415 |
+
05:16.720 --> 05:19.200
|
| 416 |
+
constructora y solo le pasamos los
|
| 417 |
+
par谩metros que nos
|
| 418 |
+
|
| 419 |
+
05:19.200 --> 05:22.120
|
| 420 |
+
interesan para esta nueva
|
| 421 |
+
persona.
|
| 422 |
+
|
| 423 |
+
05:22.120 --> 05:28.760
|
| 424 |
+
Va a ser Diego, coma, su apellido va a ser
|
| 425 |
+
de granda,
|
| 426 |
+
|
| 427 |
+
05:28.760 --> 05:32.200
|
| 428 |
+
y entonces su edad va a ser 35 a帽os.
|
| 429 |
+
|
| 430 |
+
05:32.200 --> 05:34.680
|
| 431 |
+
Lo
|
| 432 |
+
tenemos.
|
| 433 |
+
|
| 434 |
+
05:34.680 --> 05:36.080
|
| 435 |
+
Console.log.
|
| 436 |
+
|
| 437 |
+
05:36.080 --> 05:40.800
|
| 438 |
+
Y entonces aqu铆, persona2, punto y coma.
|
| 439 |
+
|
| 440 |
+
05:40.800 --> 05:44.280
|
| 441 |
+
Imprimimos y podemos ver que ahora
|
| 442 |
+
entonces ya tenemos dos
|
| 443 |
+
|
| 444 |
+
05:44.280 --> 05:47.640
|
| 445 |
+
objetos, uno de nombre Juan, otro de
|
| 446 |
+
nombre Diego.
|
| 447 |
+
|
| 448 |
+
05:47.640 --> 05:50.840
|
| 449 |
+
Y as铆 podemos empezar a generar las
|
| 450 |
+
personas que nosotros
|
| 451 |
+
|
| 452 |
+
05:50.840 --> 05:51.880
|
| 453 |
+
necesitemos.
|
| 454 |
+
|
| 455 |
+
05:51.880 --> 05:55.160
|
| 456 |
+
E incluso pod铆amos hacer una funci贸n que
|
| 457 |
+
pueda automatizar
|
| 458 |
+
|
| 459 |
+
05:55.160 --> 05:58.320
|
| 460 |
+
este proceso para que solo le pasemos los
|
| 461 |
+
par谩metros que nos
|
| 462 |
+
|
| 463 |
+
05:58.320 --> 06:01.120
|
| 464 |
+
interesan, inyectarle los par谩metros que
|
| 465 |
+
nos interesan y
|
| 466 |
+
|
| 467 |
+
06:01.120 --> 06:03.960
|
| 468 |
+
que nos vaya formando tantas personas
|
| 469 |
+
tenga nuestro
|
| 470 |
+
|
| 471 |
+
06:03.960 --> 06:04.720
|
| 472 |
+
documento.
|
| 473 |
+
|
| 474 |
+
06:04.720 --> 06:08.360
|
| 475 |
+
Entonces, ahora ya sabemos c贸mo nosotros
|
| 476 |
+
generamos una funci贸n
|
| 477 |
+
|
| 478 |
+
06:08.360 --> 06:13.000
|
| 479 |
+
constructora y c贸mo podemos generar las
|
| 480 |
+
instancias.
|
| 481 |
+
|
| 482 |
+
06:13.000 --> 06:15.880
|
| 483 |
+
Y si tu pregunta es, oye, Diego, ahora que
|
| 484 |
+
ya s茅 c贸mo generar
|
| 485 |
+
|
| 486 |
+
06:15.880 --> 06:19.520
|
| 487 |
+
esta funci贸n constructora, 驴qu茅 pasa si
|
| 488 |
+
tengo que generar una
|
| 489 |
+
|
| 490 |
+
06:19.520 --> 06:21.080
|
| 491 |
+
propiedad
|
| 492 |
+
despu茅s?
|
| 493 |
+
|
| 494 |
+
06:21.080 --> 06:23.160
|
| 495 |
+
En el camino me doy cuenta que no solo
|
| 496 |
+
quiero edad,
|
| 497 |
+
|
| 498 |
+
06:23.160 --> 06:26.160
|
| 499 |
+
sino que tambi茅n quiero el g茅nero o
|
| 500 |
+
incluso quiero su
|
| 501 |
+
|
| 502 |
+
06:26.160 --> 06:27.640
|
| 503 |
+
direcci贸n.
|
| 504 |
+
|
| 505 |
+
06:27.640 --> 06:30.160
|
| 506 |
+
驴Podr铆as venir directamente aqu铆 a la
|
| 507 |
+
funci贸n constructora y
|
| 508 |
+
|
| 509 |
+
06:30.160 --> 06:32.520
|
| 510 |
+
agregar esa nueva propiedad como
|
| 511 |
+
dis?
|
| 512 |
+
|
| 513 |
+
06:32.520 --> 06:35.720
|
| 514 |
+
Entonces, asegurarte que aqu铆 en el
|
| 515 |
+
momento de estar como
|
| 516 |
+
|
| 517 |
+
06:35.720 --> 06:39.880
|
| 518 |
+
construyendo esa instancia, puedas poner
|
| 519 |
+
esa informaci贸n.
|
| 520 |
+
|
| 521 |
+
06:39.880 --> 06:43.480
|
| 522 |
+
O lo que puedes hacer es utilizar el
|
| 523 |
+
prototype,
|
| 524 |
+
|
| 525 |
+
06:43.480 --> 06:49.080
|
| 526 |
+
puedes generar o agregar una propiedad al
|
| 527 |
+
prototype de
|
| 528 |
+
|
| 529 |
+
06:49.080 --> 06:49.760
|
| 530 |
+
persona.
|
| 531 |
+
|
| 532 |
+
06:49.760 --> 06:51.560
|
| 533 |
+
Y ahorita vamos a ver qu茅 significa eso.
|
| 534 |
+
|
| 535 |
+
06:51.560 --> 06:53.760
|
| 536 |
+
La forma de hacerlo es, mandamos llamar
|
| 537 |
+
nuestra funci贸n
|
| 538 |
+
|
| 539 |
+
06:53.760 --> 06:57.800
|
| 540 |
+
constructora, punto, prototype, punto,
|
| 541 |
+
|
| 542 |
+
06:57.800 --> 06:59.120
|
| 543 |
+
la propiedad que quiero
|
| 544 |
+
agregar.
|
| 545 |
+
|
| 546 |
+
06:59.120 --> 07:02.800
|
| 547 |
+
Que en este caso ser铆a
|
| 548 |
+
tel茅fono.
|
| 549 |
+
|
| 550 |
+
07:02.800 --> 07:04.960
|
| 551 |
+
Y aqu铆 vamos a poner un tel茅fono por default,
|
| 552 |
+
|
| 553 |
+
07:04.960 --> 07:11.560
|
| 554 |
+
que ser铆a
|
| 555 |
+
555-555-5555.
|
| 556 |
+
|
| 557 |
+
07:11.560 --> 07:14.080
|
| 558 |
+
Entonces, al momento de poner punto y coma
|
| 559 |
+
y guardar,
|
| 560 |
+
|
| 561 |
+
07:14.080 --> 07:16.280
|
| 562 |
+
puedo ver que aqu铆 est谩 imprimiendo mis
|
| 563 |
+
dos objetos que
|
| 564 |
+
|
| 565 |
+
07:16.280 --> 07:18.760
|
| 566 |
+
ya he generado, que son mis dos instancias.
|
| 567 |
+
|
| 568 |
+
07:18.760 --> 07:21.440
|
| 569 |
+
Al momento de abrir, puedo ver que, bueno,
|
| 570 |
+
|
| 571 |
+
07:21.440 --> 07:24.480
|
| 572 |
+
aqu铆 no existe la propiedad que yo acabo
|
| 573 |
+
de generar.
|
| 574 |
+
|
| 575 |
+
07:24.480 --> 07:28.080
|
| 576 |
+
El problema es que, o el punto, es que
|
| 577 |
+
esta propiedad no se
|
| 578 |
+
|
| 579 |
+
07:28.080 --> 07:31.240
|
| 580 |
+
agrega directamente en la funci贸n
|
| 581 |
+
constructora,
|
| 582 |
+
|
| 583 |
+
07:31.240 --> 07:33.960
|
| 584 |
+
sino se est谩 agregando al prototipo de la
|
| 585 |
+
funci贸n
|
| 586 |
+
|
| 587 |
+
07:33.960 --> 07:34.640
|
| 588 |
+
constructora.
|
| 589 |
+
|
| 590 |
+
07:34.640 --> 07:36.120
|
| 591 |
+
Aqu铆 tenemos
|
| 592 |
+
prototype.
|
| 593 |
+
|
| 594 |
+
07:36.120 --> 07:39.560
|
| 595 |
+
Y si lo abrimos, podemos ver que aqu铆 est谩
|
| 596 |
+
la propiedad que
|
| 597 |
+
|
| 598 |
+
07:39.560 --> 07:40.240
|
| 599 |
+
estoy
|
| 600 |
+
agregando.
|
| 601 |
+
|
| 602 |
+
07:40.240 --> 07:41.000
|
| 603 |
+
驴Por
|
| 604 |
+
qu茅?
|
| 605 |
+
|
| 606 |
+
07:41.000 --> 07:44.080
|
| 607 |
+
Porque recordemos que el prototipo es la
|
| 608 |
+
copia de la
|
| 609 |
+
|
| 610 |
+
07:44.080 --> 07:47.720
|
| 611 |
+
funci贸n constructora que se encarga de
|
| 612 |
+
compartir cada una de
|
| 613 |
+
|
| 614 |
+
07:47.720 --> 07:51.280
|
| 615 |
+
las propiedades o m茅todos que existen en
|
| 616 |
+
mi funci贸n.
|
| 617 |
+
|
| 618 |
+
07:51.280 --> 07:54.280
|
| 619 |
+
As铆 que si yo tengo que agregar una nueva
|
| 620 |
+
propiedad o un nuevo
|
| 621 |
+
|
| 622 |
+
07:54.280 --> 07:57.900
|
| 623 |
+
m茅todo, lo voy a hacer de esta forma para
|
| 624 |
+
asegurarme que el
|
| 625 |
+
|
| 626 |
+
07:57.900 --> 08:00.880
|
| 627 |
+
prototipo tambi茅n tenga esta informaci贸n
|
| 628 |
+
que estoy
|
| 629 |
+
|
| 630 |
+
08:00.880 --> 08:04.040
|
| 631 |
+
a帽adiendo y se pueda empezar a compartir
|
| 632 |
+
en las siguientes
|
| 633 |
+
|
| 634 |
+
08:04.040 --> 08:05.240
|
| 635 |
+
instancias.
|
| 636 |
+
|
| 637 |
+
08:05.240 --> 08:07.440
|
| 638 |
+
No va a venir directamente desde el
|
| 639 |
+
constructor,
|
| 640 |
+
|
| 641 |
+
08:07.440 --> 08:10.200
|
| 642 |
+
pero s铆 se va a compartir desde el prototype.
|
| 643 |
+
|
| 644 |
+
08:10.200 --> 08:13.000
|
| 645 |
+
Pero ahora, 驴qu茅 pasa si yo solo quiero
|
| 646 |
+
agregar una nueva
|
| 647 |
+
|
| 648 |
+
08:13.000 --> 08:17.160
|
| 649 |
+
propiedad a una instancia en particular
|
| 650 |
+
que yo ya gener茅 y
|
| 651 |
+
|
| 652 |
+
08:17.160 --> 08:19.400
|
| 653 |
+
no necesito que se comparte entre todas
|
| 654 |
+
las dem谩s
|
| 655 |
+
|
| 656 |
+
08:19.400 --> 08:20.520
|
| 657 |
+
instancias?
|
| 658 |
+
|
| 659 |
+
08:20.520 --> 08:23.480
|
| 660 |
+
Entonces, la forma de hacerlo, ya lo
|
| 661 |
+
sabemos hacer, ser铆a,
|
| 662 |
+
|
| 663 |
+
08:23.480 --> 08:25.160
|
| 664 |
+
vamos a mandar llamar nuestra instancia,
|
| 665 |
+
|
| 666 |
+
08:25.160 --> 08:31.320
|
| 667 |
+
va a ser persona1, punto, y va a tener una
|
| 668 |
+
nueva informaci贸n
|
| 669 |
+
|
| 670 |
+
08:31.320 --> 08:37.200
|
| 671 |
+
que va a ser nacion,
|
| 672 |
+
nacionalidad.
|
| 673 |
+
|
| 674 |
+
08:37.200 --> 08:42.600
|
| 675 |
+
Y en este caso, para esta persona, ser铆a
|
| 676 |
+
mexicano.
|
| 677 |
+
|
| 678 |
+
08:45.240 --> 08:47.280
|
| 679 |
+
Vamos a
|
| 680 |
+
guardar.
|
| 681 |
+
|
| 682 |
+
08:47.280 --> 08:51.960
|
| 683 |
+
Entonces, venimos aqu铆, tenemos, por ejemplo,
|
| 684 |
+
persona1.
|
| 685 |
+
|
| 686 |
+
08:51.960 --> 08:53.600
|
| 687 |
+
Aqu铆 es donde est谩
|
| 688 |
+
Juan.
|
| 689 |
+
|
| 690 |
+
08:53.600 --> 08:56.720
|
| 691 |
+
Estamos agregando su nueva propiedad,
|
| 692 |
+
que es mexicano.
|
| 693 |
+
|
| 694 |
+
08:56.720 --> 09:00.680
|
| 695 |
+
Venimos a persona2, Diego, y podemos ver
|
| 696 |
+
que no existe esta
|
| 697 |
+
|
| 698 |
+
09:00.680 --> 09:05.160
|
| 699 |
+
propiedad en esta instancia, porque a esta
|
| 700 |
+
instancia no se
|
| 701 |
+
|
| 702 |
+
09:05.160 --> 09:06.320
|
| 703 |
+
la
|
| 704 |
+
agregamos.
|
| 705 |
+
|
| 706 |
+
09:06.320 --> 09:09.680
|
| 707 |
+
Pero si buscamos en prototipo, aqu铆 sigue
|
| 708 |
+
estando tel茅fono y
|
| 709 |
+
|
| 710 |
+
09:09.680 --> 09:11.360
|
| 711 |
+
aqu铆 sigue estando
|
| 712 |
+
tel茅fono.
|
| 713 |
+
|
| 714 |
+
09:11.360 --> 09:13.800
|
| 715 |
+
Y ahora, si lo que queremos agregar,
|
| 716 |
+
por ejemplo,
|
| 717 |
+
|
| 718 |
+
09:13.800 --> 09:17.280
|
| 719 |
+
en la funci贸n constructora no es una
|
| 720 |
+
propiedad, sino un m茅todo,
|
| 721 |
+
|
| 722 |
+
09:17.280 --> 09:19.680
|
| 723 |
+
podemos ver que esta funci贸n constructora,
|
| 724 |
+
nosotros,
|
| 725 |
+
|
| 726 |
+
09:19.680 --> 09:22.360
|
| 727 |
+
no agregamos m茅todos, simplemente propiedades,
|
| 728 |
+
|
| 729 |
+
09:22.360 --> 09:25.360
|
| 730 |
+
pues la forma de hacerlo de igual forma va
|
| 731 |
+
a ser con el
|
| 732 |
+
|
| 733 |
+
09:25.360 --> 09:26.280
|
| 734 |
+
prototipo.
|
| 735 |
+
|
| 736 |
+
09:26.280 --> 09:29.800
|
| 737 |
+
Entonces, llegamos, mandamos llamar
|
| 738 |
+
nuestra funci贸n
|
| 739 |
+
|
| 740 |
+
09:29.800 --> 09:32.880
|
| 741 |
+
constructora de persona, utilizamos
|
| 742 |
+
nuestra palabra
|
| 743 |
+
|
| 744 |
+
09:32.880 --> 09:35.280
|
| 745 |
+
reservada de prototype,
|
| 746 |
+
punto.
|
| 747 |
+
|
| 748 |
+
09:35.280 --> 09:38.320
|
| 749 |
+
Y entonces, aqu铆 vamos a construir una
|
| 750 |
+
funci贸n que se va
|
| 751 |
+
|
| 752 |
+
09:38.320 --> 09:40.720
|
| 753 |
+
a convertir en el
|
| 754 |
+
m茅todo.
|
| 755 |
+
|
| 756 |
+
09:40.720 --> 09:43.880
|
| 757 |
+
Saludar, que en este caso va a ser igual a
|
| 758 |
+
una funci贸n
|
| 759 |
+
|
| 760 |
+
09:43.880 --> 09:44.380
|
| 761 |
+
an贸nima.
|
| 762 |
+
|
| 763 |
+
09:47.440 --> 09:49.960
|
| 764 |
+
Y la estructura, esta ya la conocemos,
|
| 765 |
+
|
| 766 |
+
09:49.960 --> 09:51.440
|
| 767 |
+
c贸mo hacer las funciones
|
| 768 |
+
an贸nimas,
|
| 769 |
+
|
| 770 |
+
09:51.440 --> 09:53.240
|
| 771 |
+
c贸mo generar una
|
| 772 |
+
funci贸n.
|
| 773 |
+
|
| 774 |
+
09:53.240 --> 09:58.240
|
| 775 |
+
Vamos a poner un
|
| 776 |
+
console.log.
|
| 777 |
+
|
| 778 |
+
09:58.240 --> 10:00.920
|
| 779 |
+
Y aqu铆 vamos a utilizar, por ejemplo,
|
| 780 |
+
|
| 781 |
+
10:00.920 --> 10:05.080
|
| 782 |
+
el nombre de cada una de las instancias
|
| 783 |
+
que estamos creando
|
| 784 |
+
|
| 785 |
+
10:05.080 --> 10:07.240
|
| 786 |
+
para que se imprima de forma independiente.
|
| 787 |
+
|
| 788 |
+
10:07.240 --> 10:11.520
|
| 789 |
+
Y entonces, vamos a utilizar nuestras
|
| 790 |
+
comillas para poder
|
| 791 |
+
|
| 792 |
+
10:11.520 --> 10:12.800
|
| 793 |
+
utilizar las
|
| 794 |
+
variables.
|
| 795 |
+
|
| 796 |
+
10:12.800 --> 10:17.400
|
| 797 |
+
Y entonces, aqu铆 ponemos, hola, coma,
|
| 798 |
+
me llamo.
|
| 799 |
+
|
| 800 |
+
10:17.400 --> 10:21.200
|
| 801 |
+
Y entonces, vamos a poner
|
| 802 |
+
besitos,
|
| 803 |
+
|
| 804 |
+
10:21.200 --> 10:23.080
|
| 805 |
+
vamos a poner nuestros
|
| 806 |
+
corchetes.
|
| 807 |
+
|
| 808 |
+
10:23.080 --> 10:25.520
|
| 809 |
+
Y entonces, aqu铆 vamos a utilizar el dis,
|
| 810 |
+
|
| 811 |
+
10:25.520 --> 10:28.120
|
| 812 |
+
porque el dis, recordemos, que hace
|
| 813 |
+
referencia a la funci贸n
|
| 814 |
+
|
| 815 |
+
10:28.120 --> 10:34.040
|
| 816 |
+
constructora misma para poder mandar
|
| 817 |
+
llamar el valor de la
|
| 818 |
+
|
| 819 |
+
10:34.040 --> 10:36.160
|
| 820 |
+
variable que estamos buscando en este momento.
|
| 821 |
+
|
| 822 |
+
10:36.160 --> 10:41.160
|
| 823 |
+
Entonces, ser铆a
|
| 824 |
+
dis.nombre.
|
| 825 |
+
|
| 826 |
+
10:41.160 --> 10:43.000
|
| 827 |
+
Y vamos a tambi茅n agregarle el apellido.
|
| 828 |
+
|
| 829 |
+
10:45.800 --> 10:51.480
|
| 830 |
+
Y ser铆a
|
| 831 |
+
dis.apellido.
|
| 832 |
+
|
| 833 |
+
10:51.480 --> 10:57.720
|
| 834 |
+
Entonces, si guardamos aqu铆, si venimos ac谩,
|
| 835 |
+
|
| 836 |
+
10:57.720 --> 11:01.000
|
| 837 |
+
aqu铆 de igual forma, pues no lo vamos a
|
| 838 |
+
ver visible en la
|
| 839 |
+
|
| 840 |
+
11:01.000 --> 11:02.200
|
| 841 |
+
funci贸n
|
| 842 |
+
constructora.
|
| 843 |
+
|
| 844 |
+
11:02.200 --> 11:05.600
|
| 845 |
+
Si abrimos el prototipo, podemos ver que
|
| 846 |
+
ya existe el m茅todo de
|
| 847 |
+
|
| 848 |
+
11:05.600 --> 11:06.600
|
| 849 |
+
saludar.
|
| 850 |
+
|
| 851 |
+
11:06.600 --> 11:10.040
|
| 852 |
+
Y la forma de ver si realmente lo tiene
|
| 853 |
+
cada una de nuestras
|
| 854 |
+
|
| 855 |
+
11:10.040 --> 11:20.080
|
| 856 |
+
instancias, pues es un, vamos a mandar
|
| 857 |
+
llamar persona1.saludar.
|
| 858 |
+
|
| 859 |
+
11:20.080 --> 11:23.520
|
| 860 |
+
Y
|
| 861 |
+
persona2.saludar.
|
| 862 |
+
|
| 863 |
+
11:28.760 --> 11:32.440
|
| 864 |
+
Entonces, si guardamos aqu铆, podemos ver
|
| 865 |
+
que de persona1 es,
|
| 866 |
+
|
| 867 |
+
11:32.440 --> 11:33.680
|
| 868 |
+
hola, me llamo Juan
|
| 869 |
+
P茅rez.
|
| 870 |
+
|
| 871 |
+
11:33.680 --> 11:50.720
|
| 872 |
+
Y persona2, hola, me llamo Diego de Granda.
|
| 873 |
+
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/03-Resumen.html
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/04-Clases en JavaScript Creaci贸n y Uso de Objetos con Sintaxis Moderna.mp4
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:38b66525bce56af6eb79e35633e4355d8e1d6e83925fab4525181356bc0646b0
|
| 3 |
+
size 40687964
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/04-Clases en JavaScript Creaci贸n y Uso de Objetos con Sintaxis Moderna.vtt
ADDED
|
@@ -0,0 +1,408 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
WEBVTT
|
| 2 |
+
|
| 3 |
+
00:00.000 --> 00:04.760
|
| 4 |
+
A partir de 2015, JavaScript present贸 una
|
| 5 |
+
nueva forma de construir clases.
|
| 6 |
+
|
| 7 |
+
00:04.760 --> 00:08.360
|
| 8 |
+
Y no es algo completamente nuevo o
|
| 9 |
+
diferente de la forma en la que conocemos,
|
| 10 |
+
|
| 11 |
+
00:08.360 --> 00:10.120
|
| 12 |
+
que ser铆a una funci贸n
|
| 13 |
+
constructora.
|
| 14 |
+
|
| 15 |
+
00:10.120 --> 00:15.840
|
| 16 |
+
Simplemente es una forma que se asemeja
|
| 17 |
+
mucho a otros lenguajes de programaci贸n,
|
| 18 |
+
|
| 19 |
+
00:15.840 --> 00:20.280
|
| 20 |
+
por ejemplo Java, que son lenguajes mucho
|
| 21 |
+
m谩s orientados a objetos,
|
| 22 |
+
|
| 23 |
+
00:20.280 --> 00:22.040
|
| 24 |
+
reales orientados a
|
| 25 |
+
objetos.
|
| 26 |
+
|
| 27 |
+
00:22.040 --> 00:25.560
|
| 28 |
+
Podemos decir que una clase de esta nueva
|
| 29 |
+
estructura es un Sugar Syntax,
|
| 30 |
+
|
| 31 |
+
00:25.560 --> 00:28.840
|
| 32 |
+
en lo que ya nosotros conocemos para poder
|
| 33 |
+
generar objetos.
|
| 34 |
+
|
| 35 |
+
00:28.840 --> 00:30.680
|
| 36 |
+
Pero entonces, 驴qu茅 es una
|
| 37 |
+
clase?
|
| 38 |
+
|
| 39 |
+
00:30.680 --> 00:33.760
|
| 40 |
+
Una clase es como si tuvi茅ramos un Blueprint,
|
| 41 |
+
|
| 42 |
+
00:33.760 --> 00:38.640
|
| 43 |
+
que pr谩cticamente es generar el molde del
|
| 44 |
+
cual se van a construir diferentes objetos.
|
| 45 |
+
|
| 46 |
+
00:38.640 --> 00:42.720
|
| 47 |
+
Vamos a pasar entonces a nuestro editor de
|
| 48 |
+
texto.
|
| 49 |
+
|
| 50 |
+
00:42.720 --> 00:45.800
|
| 51 |
+
Si estamos aqu铆, como te estaba comentando,
|
| 52 |
+
|
| 53 |
+
00:45.800 --> 00:50.120
|
| 54 |
+
una clase es pr谩cticamente como un molde
|
| 55 |
+
que nosotros vamos a construir
|
| 56 |
+
|
| 57 |
+
00:50.120 --> 00:52.280
|
| 58 |
+
para poder crear nuevos
|
| 59 |
+
objetos.
|
| 60 |
+
|
| 61 |
+
00:52.280 --> 00:55.800
|
| 62 |
+
Es como una funci贸n constructora, pero con
|
| 63 |
+
una sintaxis distinta.
|
| 64 |
+
|
| 65 |
+
00:55.800 --> 01:00.080
|
| 66 |
+
Para poder comenzar con las clases,
|
| 67 |
+
nosotros vamos a utilizar una palabra reservada
|
| 68 |
+
|
| 69 |
+
01:00.080 --> 01:02.320
|
| 70 |
+
que se llama
|
| 71 |
+
class.
|
| 72 |
+
|
| 73 |
+
01:02.320 --> 01:06.000
|
| 74 |
+
Ahora esa es la palabra que utilizamos
|
| 75 |
+
para comenzar con las clases.
|
| 76 |
+
|
| 77 |
+
01:06.000 --> 01:10.000
|
| 78 |
+
Y similar a como se utiliza, por ejemplo,
|
| 79 |
+
con una funci贸n constructora,
|
| 80 |
+
|
| 81 |
+
01:10.000 --> 01:12.800
|
| 82 |
+
es el nombre de lo que va a ser nuestra clase.
|
| 83 |
+
|
| 84 |
+
01:12.800 --> 01:18.360
|
| 85 |
+
Iniciamos con una letra en may煤scula.
|
| 86 |
+
|
| 87 |
+
01:18.360 --> 01:22.800
|
| 88 |
+
Esta clase se va a llamar persona, porque
|
| 89 |
+
de aqu铆 voy a construir m谩s personas.
|
| 90 |
+
|
| 91 |
+
01:22.800 --> 01:25.120
|
| 92 |
+
Y ponemos nuestros
|
| 93 |
+
corchetes.
|
| 94 |
+
|
| 95 |
+
01:25.120 --> 01:28.200
|
| 96 |
+
Y ya que estamos ac谩, lo primero que
|
| 97 |
+
tenemos que hacer es
|
| 98 |
+
|
| 99 |
+
01:28.200 --> 01:31.440
|
| 100 |
+
vamos a sacar un m茅todo, que es un m茅todo
|
| 101 |
+
constructor.
|
| 102 |
+
|
| 103 |
+
01:31.440 --> 01:37.080
|
| 104 |
+
Que esto define c贸mo se deben configurar
|
| 105 |
+
las propiedades de este objeto.
|
| 106 |
+
|
| 107 |
+
01:37.080 --> 01:42.200
|
| 108 |
+
De los objetos que vengan de esta clase,
|
| 109 |
+
este m茅todo constructor
|
| 110 |
+
|
| 111 |
+
01:42.200 --> 01:46.760
|
| 112 |
+
va a definir c贸mo se deben de configurar
|
| 113 |
+
estas propiedades del objeto
|
| 114 |
+
|
| 115 |
+
01:46.760 --> 01:50.040
|
| 116 |
+
y puede recibir argumentos para
|
| 117 |
+
personalizar la iniciaci贸n.
|
| 118 |
+
|
| 119 |
+
01:50.040 --> 01:53.240
|
| 120 |
+
Quiere decir que, como es un m茅todo tipo
|
| 121 |
+
funci贸n,
|
| 122 |
+
|
| 123 |
+
01:53.240 --> 01:59.000
|
| 124 |
+
aqu铆 voy a poner los argumentos que
|
| 125 |
+
requiero para poder formar mi persona.
|
| 126 |
+
|
| 127 |
+
01:59.000 --> 02:03.680
|
| 128 |
+
Que en este caso va a ser un nombre,
|
| 129 |
+
por ejemplo, y edad.
|
| 130 |
+
|
| 131 |
+
02:03.680 --> 02:05.640
|
| 132 |
+
Aqu铆 lo
|
| 133 |
+
tengo.
|
| 134 |
+
|
| 135 |
+
02:05.640 --> 02:11.320
|
| 136 |
+
Entonces aqu铆 voy a empezar a formar la
|
| 137 |
+
estructura de lo que va a generar mi
|
| 138 |
+
|
| 139 |
+
02:11.320 --> 02:13.840
|
| 140 |
+
clase, de c贸mo se va a crear mi clase.
|
| 141 |
+
|
| 142 |
+
02:13.840 --> 02:17.000
|
| 143 |
+
Y vamos a reutilizar esta palabra reservada,
|
| 144 |
+
this,
|
| 145 |
+
|
| 146 |
+
02:17.000 --> 02:22.320
|
| 147 |
+
que como platic谩bamos, this es una palabra
|
| 148 |
+
reservada que hace referencia
|
| 149 |
+
|
| 150 |
+
02:22.320 --> 02:23.840
|
| 151 |
+
a la misma
|
| 152 |
+
clase.
|
| 153 |
+
|
| 154 |
+
02:23.840 --> 02:29.000
|
| 155 |
+
Entonces, en este caso es this.nombre,
|
| 156 |
+
como el nombre de esta clase,
|
| 157 |
+
|
| 158 |
+
02:29.000 --> 02:33.480
|
| 159 |
+
en este caso es persona, va a ser igual a
|
| 160 |
+
el nombre que me pasen como
|
| 161 |
+
|
| 162 |
+
02:33.480 --> 02:35.920
|
| 163 |
+
par谩metro.
|
| 164 |
+
|
| 165 |
+
02:35.920 --> 02:36.840
|
| 166 |
+
Perfecto.
|
| 167 |
+
|
| 168 |
+
02:36.840 --> 02:37.800
|
| 169 |
+
Punto y
|
| 170 |
+
coma.
|
| 171 |
+
|
| 172 |
+
02:37.800 --> 02:39.440
|
| 173 |
+
Y vamos a utilizar
|
| 174 |
+
edad.
|
| 175 |
+
|
| 176 |
+
02:39.440 --> 02:43.320
|
| 177 |
+
this.edad, que es la edad de esta clase,
|
| 178 |
+
|
| 179 |
+
02:43.320 --> 02:47.520
|
| 180 |
+
va a ser igual a edad que me pasen como
|
| 181 |
+
referencia una vez que yo genere
|
| 182 |
+
|
| 183 |
+
02:47.520 --> 02:50.000
|
| 184 |
+
la nueva
|
| 185 |
+
instancia.
|
| 186 |
+
|
| 187 |
+
02:50.000 --> 02:53.640
|
| 188 |
+
Porque vamos a utilizar al momento de
|
| 189 |
+
generar una nueva instancia,
|
| 190 |
+
|
| 191 |
+
02:53.640 --> 02:57.120
|
| 192 |
+
vamos a hacerlo como si fuera una funci贸n
|
| 193 |
+
que recibe dos par谩metros.
|
| 194 |
+
|
| 195 |
+
02:57.120 --> 03:01.480
|
| 196 |
+
Y estos dos par谩metros se van a convertir
|
| 197 |
+
en el valor de estas dos
|
| 198 |
+
|
| 199 |
+
03:01.480 --> 03:04.760
|
| 200 |
+
propiedades de la clase que estoy
|
| 201 |
+
construyendo en este momento.
|
| 202 |
+
|
| 203 |
+
03:04.760 --> 03:07.560
|
| 204 |
+
Y aqu铆, por ejemplo, si mi clase va a
|
| 205 |
+
llevar alg煤n m茅todo,
|
| 206 |
+
|
| 207 |
+
03:07.560 --> 03:11.400
|
| 208 |
+
recordemos que estas son propiedades,
|
| 209 |
+
pero tambi茅n puede llevar m茅todos.
|
| 210 |
+
|
| 211 |
+
03:11.400 --> 03:13.760
|
| 212 |
+
Vamos a poner
|
| 213 |
+
saludar.
|
| 214 |
+
|
| 215 |
+
03:13.760 --> 03:17.640
|
| 216 |
+
Entonces el m茅todo es como una funci贸n
|
| 217 |
+
adentro de un objeto.
|
| 218 |
+
|
| 219 |
+
03:17.640 --> 03:22.400
|
| 220 |
+
Y saludar lo que va a hacer es, nos va a
|
| 221 |
+
regresar un console.log,
|
| 222 |
+
|
| 223 |
+
03:22.400 --> 03:30.000
|
| 224 |
+
que a su vez nos va a imprimir, por ejemplo,
|
| 225 |
+
un hola, mi nombre es,
|
| 226 |
+
|
| 227 |
+
03:30.000 --> 03:39.160
|
| 228 |
+
y vamos a mandar llamar el valor de nombre,
|
| 229 |
+
de mi propiedad nombre,
|
| 230 |
+
|
| 231 |
+
03:39.160 --> 03:40.160
|
| 232 |
+
que ser铆a
|
| 233 |
+
this.nombre.
|
| 234 |
+
|
| 235 |
+
03:40.160 --> 03:49.560
|
| 236 |
+
Y tengo nada m谩s para, tengo un poco m谩s
|
| 237 |
+
de informaci贸n,
|
| 238 |
+
|
| 239 |
+
03:49.560 --> 03:55.440
|
| 240 |
+
tengo this.edad,
|
| 241 |
+
a帽os.
|
| 242 |
+
|
| 243 |
+
03:55.440 --> 03:57.480
|
| 244 |
+
Listo con
|
| 245 |
+
eso.
|
| 246 |
+
|
| 247 |
+
03:57.480 --> 04:00.600
|
| 248 |
+
Entonces ya que tenemos aqu铆, este es un
|
| 249 |
+
Blueprints.
|
| 250 |
+
|
| 251 |
+
04:00.600 --> 04:02.520
|
| 252 |
+
Pr谩cticamente eso nada m谩s es un molde.
|
| 253 |
+
|
| 254 |
+
04:02.520 --> 04:04.320
|
| 255 |
+
Ahorita no va a ser
|
| 256 |
+
nada.
|
| 257 |
+
|
| 258 |
+
04:04.320 --> 04:10.760
|
| 259 |
+
Si yo mando llamar, por ejemplo, el m茅todo
|
| 260 |
+
de saludar de mi clase
|
| 261 |
+
|
| 262 |
+
04:10.760 --> 04:13.880
|
| 263 |
+
persona, pues va a haber un onDefine
|
| 264 |
+
porque no tengo nada
|
| 265 |
+
|
| 266 |
+
04:13.880 --> 04:16.920
|
| 267 |
+
definido, no hay valores aqu铆 como definidos.
|
| 268 |
+
|
| 269 |
+
04:16.920 --> 04:18.280
|
| 270 |
+
Ese simplemente es un
|
| 271 |
+
molde.
|
| 272 |
+
|
| 273 |
+
04:18.280 --> 04:21.480
|
| 274 |
+
De aqu铆 nosotros tenemos que empezar a
|
| 275 |
+
crear estas nuevas
|
| 276 |
+
|
| 277 |
+
04:21.480 --> 04:24.040
|
| 278 |
+
instancias de personas que nos van a
|
| 279 |
+
ayudar a tener la
|
| 280 |
+
|
| 281 |
+
04:24.040 --> 04:27.200
|
| 282 |
+
informaci贸n suficiente para empezar a
|
| 283 |
+
darle valor a estas
|
| 284 |
+
|
| 285 |
+
04:27.200 --> 04:28.520
|
| 286 |
+
propiedades que tenemos
|
| 287 |
+
aqu铆.
|
| 288 |
+
|
| 289 |
+
04:28.520 --> 04:29.600
|
| 290 |
+
驴C贸mo lo
|
| 291 |
+
har铆amos?
|
| 292 |
+
|
| 293 |
+
04:29.600 --> 04:34.800
|
| 294 |
+
Bien, empezamos con una constante persona1
|
| 295 |
+
igual a,
|
| 296 |
+
|
| 297 |
+
04:34.800 --> 04:37.400
|
| 298 |
+
utilizando la palabra reservada new, que new,
|
| 299 |
+
|
| 300 |
+
04:37.400 --> 04:41.880
|
| 301 |
+
y aqu铆 mandamos llamar el nombre de
|
| 302 |
+
nuestra clase.
|
| 303 |
+
|
| 304 |
+
04:41.880 --> 04:45.240
|
| 305 |
+
New lo que hace es pr谩cticamente va a
|
| 306 |
+
conectar,
|
| 307 |
+
|
| 308 |
+
04:45.240 --> 04:49.360
|
| 309 |
+
new va a mandar llamar a nuestra clase y
|
| 310 |
+
new va a conectar con
|
| 311 |
+
|
| 312 |
+
04:49.360 --> 04:54.240
|
| 313 |
+
el constructor para poder entonces
|
| 314 |
+
rellenar estas
|
| 315 |
+
|
| 316 |
+
04:54.240 --> 04:57.360
|
| 317 |
+
propiedades que tengo aqu铆 con valores que
|
| 318 |
+
yo le vaya a pasar
|
| 319 |
+
|
| 320 |
+
04:57.360 --> 05:00.800
|
| 321 |
+
a la clase, que es la clase que estoy
|
| 322 |
+
formando.
|
| 323 |
+
|
| 324 |
+
05:00.800 --> 05:03.560
|
| 325 |
+
Entonces tenemos nombre y
|
| 326 |
+
edad.
|
| 327 |
+
|
| 328 |
+
05:03.560 --> 05:11.320
|
| 329 |
+
Va a ser Mariana y Mariana tiene 25 a帽os.
|
| 330 |
+
|
| 331 |
+
05:11.320 --> 05:13.520
|
| 332 |
+
Aqu铆 ya tenemos una nueva instancia.
|
| 333 |
+
|
| 334 |
+
05:13.520 --> 05:15.480
|
| 335 |
+
Que lo que estamos haciendo es, mi
|
| 336 |
+
instancia se llama
|
| 337 |
+
|
| 338 |
+
05:15.480 --> 05:20.800
|
| 339 |
+
persona1, estamos generando una nueva
|
| 340 |
+
instancia de mi clase
|
| 341 |
+
|
| 342 |
+
05:20.800 --> 05:24.920
|
| 343 |
+
persona y le estamos dando el valor a los
|
| 344 |
+
par谩metros que me
|
| 345 |
+
|
| 346 |
+
05:24.920 --> 05:29.160
|
| 347 |
+
pide el constructor para que entonces
|
| 348 |
+
estas dos propiedades
|
| 349 |
+
|
| 350 |
+
05:29.160 --> 05:30.080
|
| 351 |
+
tengan un
|
| 352 |
+
valor.
|
| 353 |
+
|
| 354 |
+
05:30.080 --> 05:33.040
|
| 355 |
+
Y se puede utilizar en caso de que yo
|
| 356 |
+
mande llamar saludar.
|
| 357 |
+
|
| 358 |
+
05:33.040 --> 05:36.360
|
| 359 |
+
Que en este caso es justo lo que voy a hacer.
|
| 360 |
+
|
| 361 |
+
05:36.360 --> 05:39.000
|
| 362 |
+
Voy a mandar llamar persona1.saludar.
|
| 363 |
+
|
| 364 |
+
05:45.600 --> 05:48.440
|
| 365 |
+
Con esto si guardo, aqu铆 ya tengo el
|
| 366 |
+
primer mensaje que
|
| 367 |
+
|
| 368 |
+
05:48.440 --> 05:49.120
|
| 369 |
+
est谩
|
| 370 |
+
imprimiendo.
|
| 371 |
+
|
| 372 |
+
05:49.120 --> 05:52.440
|
| 373 |
+
Es, hola, mi nombre es Mariana y tengo 25
|
| 374 |
+
a帽os.
|
| 375 |
+
|
| 376 |
+
05:52.440 --> 05:55.320
|
| 377 |
+
Esto viene de crear una primera instancia
|
| 378 |
+
con esta nueva
|
| 379 |
+
|
| 380 |
+
05:55.320 --> 05:58.000
|
| 381 |
+
sintaxis, que es la sintaxis de clase.
|
| 382 |
+
|
| 383 |
+
05:58.000 --> 06:00.400
|
| 384 |
+
De aqu铆 en adelante, pr谩cticamente todo lo
|
| 385 |
+
que vayas
|
| 386 |
+
|
| 387 |
+
06:00.400 --> 06:03.520
|
| 388 |
+
a hacer en temas de programaci贸n orientado
|
| 389 |
+
a objetos,
|
| 390 |
+
|
| 391 |
+
06:03.520 --> 06:06.240
|
| 392 |
+
vas a utilizar esta sintaxis, clases.
|
| 393 |
+
|
| 394 |
+
06:06.240 --> 06:08.480
|
| 395 |
+
Tienes tu constructor, tienes los m茅todos,
|
| 396 |
+
|
| 397 |
+
06:08.480 --> 06:12.720
|
| 398 |
+
tienes aqu铆 pr谩cticamente las propiedades
|
| 399 |
+
y los par谩metros que
|
| 400 |
+
|
| 401 |
+
06:12.720 --> 06:15.720
|
| 402 |
+
se requieren para poder generar tus nuevas
|
| 403 |
+
instancias y t煤
|
| 404 |
+
|
| 405 |
+
06:15.720 --> 06:23.280
|
| 406 |
+
vas a poder utilizar
|
| 407 |
+
despu茅s.
|
| 408 |
+
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/04-Lecturas recomendadas.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
https://github.com/platzi/basico-js
|
subir/Curso de Fundamentos de JavaScript/05-Programaci贸n Orientada a Objetos/04-index_36cbd56e-6114-4e82-92ba-c0c0792e2d31.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
class Persona {
|
| 2 |
+
constructor(nombre, edad) {
|
| 3 |
+
this.nombre = nombre;
|
| 4 |
+
this.edad = edad;
|
| 5 |
+
}
|
| 6 |
+
saludar() {
|
| 7 |
+
console.log(`Hola, mi nombre es ${this.nombre} y tengo ${this.edad} a帽os.`);
|
| 8 |
+
}
|
| 9 |
+
}
|
| 10 |
+
|
| 11 |
+
const persona1 = new Persona("Mariana", 25);
|
| 12 |
+
|
| 13 |
+
persona1.saludar();
|