1
00:00:00,410 --> 00:00:01,880
Está bien, volveremos.

2
00:00:02,100 --> 00:00:07,110
Entonces en este video vamos a discutir nuestra primera estructura de datos principal, que es algo

3
00:00:07,110 --> 00:00:08,200
que se llama matriz.

4
00:00:09,060 --> 00:00:10,520
Entonces tenemos algunos objetivos aquí.

5
00:00:10,710 --> 00:00:15,340
El primero es que queremos entender qué son las matrices y por qué las usamos.

6
00:00:15,810 --> 00:00:18,210
Y luego, en segundo lugar, queremos usarlos en nuestro código.

7
00:00:18,540 --> 00:00:22,840
Así que comencemos hablando conceptualmente de lo que es el punto de una matriz.

8
00:00:23,130 --> 00:00:25,930
Entonces, supongamos que quisiera modelar un grupo de amigos.

9
00:00:26,130 --> 00:00:32,380
Entonces, cada amigo es una cadena con su nombre como Charlie, Liz David y Mathias.

10
00:00:32,640 --> 00:00:35,130
Así que podría hacer para las variables de amigo.

11
00:00:35,160 --> 00:00:41,100
Cada uno es una variable separada y si quisiera agregar otro necesitaría guardar a nuestro amigo. 5

12
00:00:41,340 --> 00:00:42,880
es igual a otro nombre.

13
00:00:43,020 --> 00:00:47,700
Y luego necesito saber para el próximo que necesito hacer forense y luego amigo 7.

14
00:00:47,880 --> 00:00:50,340
Y entonces esto es problemático por algunas razones.

15
00:00:50,340 --> 00:00:53,730
Una es que este código no es lo que consideraríamos seco.

16
00:00:53,730 --> 00:00:56,040
Hay un montón de código repetido aquí.

17
00:00:56,040 --> 00:00:59,150
Además, estos amigos no están relacionados entre sí.

18
00:00:59,220 --> 00:01:00,490
Están totalmente separados.

19
00:01:00,690 --> 00:01:02,640
Entonces no es realmente un grupo de amigos.

20
00:01:02,940 --> 00:01:08,730
Así que este es un caso de uso perfecto para una matriz, una matriz deja los datos de su grupo en una lista.

21
00:01:09,060 --> 00:01:15,930
Entonces, en lugar de tener cuatro variables separadas, podemos escribir una variable y dentro de ella

22
00:01:15,930 --> 00:01:17,840
almacenamos cuatro nombres diferentes.

23
00:01:17,880 --> 00:01:21,260
Así que echemos un vistazo más de cerca a cómo funcionan las matrices.

24
00:01:21,420 --> 00:01:23,340
Tengo el mismo código de ejemplo aquí.

25
00:01:23,490 --> 00:01:26,940
Var amigos es igual y luego corchetes.

26
00:01:26,970 --> 00:01:30,080
Entonces eso es lo que le dice a javascript que esto es una matriz.

27
00:01:30,120 --> 00:01:35,760
Hasta este punto, aquí nos enfrentamos a una variable de JavaScript normal, donde en el lado

28
00:01:35,880 --> 00:01:40,610
derecho podríamos simplemente tener una cadena o un número, booleano o indefinido, o no.

29
00:01:40,800 --> 00:01:42,850
Pero en cambio tenemos una matriz.

30
00:01:43,260 --> 00:01:45,520
Entonces, los corchetes denotan una matriz.

31
00:01:45,540 --> 00:01:48,960
Puede ver el soporte abierto del soporte cerrado.

32
00:01:49,140 --> 00:01:53,070
Y dentro tenemos nuestra lista de datos para declarar una matriz.

33
00:01:53,310 --> 00:01:55,230
Es una lista separada por comas.

34
00:01:55,320 --> 00:01:59,760
Entonces tenemos nuestros valores como Charlie comma Liz coma David coma.

35
00:01:59,790 --> 00:02:00,780
MATHIAS.

36
00:02:00,780 --> 00:02:03,920
Y eso da como resultado una matriz de cuatro elementos.

37
00:02:03,930 --> 00:02:09,390
La segunda información importante sobre las matrices es que están indexadas como los caracteres

38
00:02:09,420 --> 00:02:15,750
en una cadena donde hay un número específico que corresponde a cada carácter que comienza en cero.

39
00:02:16,020 --> 00:02:18,660
Las matrices también se indexan comenzando en cero.

40
00:02:18,900 --> 00:02:22,270
Entonces cada ranura en este conjunto tiene un número correspondiente.

41
00:02:22,410 --> 00:02:28,140
Cuando hacemos esta matriz aquí con estos cuatro nombres Aquí hay un diagrama que representa cómo se crea la

42
00:02:28,140 --> 00:02:29,240
matriz en la memoria.

43
00:02:29,310 --> 00:02:38,100
Así que tenemos a Charlie almacenado con el número cero ya que el índice es con un David con dos Mathias con tres.

44
00:02:39,600 --> 00:02:44,520
Usamos esos índices de matriz todo el tiempo para obtener datos de la matriz.

45
00:02:44,550 --> 00:02:46,770
Así que aquí estoy inicializando la misma matriz exacta.

46
00:02:46,970 --> 00:02:53,550
Y si quiero sacar a Charlie del arreglo, necesito saber cuál es el índice que corresponde

47
00:02:53,550 --> 00:02:54,290
a Charlee.

48
00:02:54,810 --> 00:02:56,820
Y entonces todo lo que hago es escribir amigos.

49
00:02:57,030 --> 00:02:59,450
El paréntesis del nombre de la variable es 0.

50
00:02:59,580 --> 00:03:03,300
Como lo haríamos con la cuerda si quisiera el primer personaje de nuevo.

51
00:03:03,340 --> 00:03:08,190
La única diferencia es que no estamos lidiando con una cadena de caracteres que estamos tratando con

52
00:03:08,640 --> 00:03:09,940
una variedad de cadenas.

53
00:03:10,530 --> 00:03:13,930
Entonces el amigo 0 me va a dar Chartley.

54
00:03:14,190 --> 00:03:22,500
Del mismo modo, si hice amigos, uno que me da vidas más un corazón, más amigos, dos me dan a David y

55
00:03:22,500 --> 00:03:23,980
terminamos con Liz Hart.

56
00:03:24,060 --> 00:03:30,370
David también podemos usar los índices para actualizar los valores de matriz.

57
00:03:30,630 --> 00:03:37,320
Entonces, si Charlie quiere cambiar su nombre para descartarlo, todo lo que tengo que hacer es encontrar a

58
00:03:37,320 --> 00:03:43,300
Charlie en la matriz con el índice cero amigos cero y establecerlo igual a otra cadena Chuck.

59
00:03:43,320 --> 00:03:47,460
Entonces nuestra matriz se ve así, donde tenemos a Chuck en el índice 0.

60
00:03:47,460 --> 00:03:48,990
Lo mismo con Liz.

61
00:03:49,020 --> 00:03:56,670
Cambia su nombre a Lizzie. Acabamos de encontrar el índice correcto para Liz, que es uno de los amigos de uno igual a Lizzie,

62
00:03:56,940 --> 00:03:59,370
como puedes ver aquí en nuestra matriz.

63
00:03:59,370 --> 00:04:05,090
Ahora parece Chuck en cero Lizzy en 1.

64
00:04:05,520 --> 00:04:10,280
La siguiente característica de las matrices es que también podemos agregar datos a una matriz existente.

65
00:04:10,290 --> 00:04:15,150
Entonces, si tengo un nuevo amigo que sería increíble, podría usar algunos nuevos amigos. Todo lo

66
00:04:15,150 --> 00:04:20,430
que tengo que hacer es acceder a amigos y poner un índice aquí que todavía no existe.

67
00:04:20,430 --> 00:04:29,490
Así que en este caso y si hago amigos para la familia igual obtendré un índice de ventaja aquí porque no

68
00:04:29,490 --> 00:04:36,750
voy a mostrarles una demostración rápida en la estafa. Voy a usar una matriz para modelar colores para

69
00:04:36,750 --> 00:04:37,410
hacer eso.

70
00:04:37,440 --> 00:04:43,980
Voy a definir una matriz de colores de var iguales y voy a

71
00:04:43,980 --> 00:04:53,030
poner solo unos pocos colores como cadenas para comenzar en rojo anaranjado y amarillo y presionaré enter.

72
00:04:53,070 --> 00:04:55,480
Ahora tengo mi matriz de colores definida.

73
00:04:55,670 --> 00:05:02,840
Si tengo acceso a los colores, tengo tres elementos y si quería imprimir en naranja, haría los

74
00:05:02,840 --> 00:05:12,840
colores para el paquete 1 porque tiene un índice de 1 y me pongo naranja si quería agregar otro elemento después del amarillo que

75
00:05:12,960 --> 00:05:14,910
quería agregar. en verde.

76
00:05:14,910 --> 00:05:17,880
Necesitaría contar 0 1 2.

77
00:05:18,090 --> 00:05:20,410
Entonces, el índice de 3 es el siguiente.

78
00:05:20,460 --> 00:05:25,240
Índice tres colores tres es igual a verde.

79
00:05:25,540 --> 00:05:30,390
Y ahora, si echamos un vistazo a los colores, me pongo rojo, naranja, amarillo, verde.

80
00:05:30,420 --> 00:05:33,930
Supongamos que quiero cambiar el verde al verde oscuro.

81
00:05:34,530 --> 00:05:36,120
Necesito acceder primero.

82
00:05:36,180 --> 00:05:37,640
Entonces colores 3.

83
00:05:37,710 --> 00:05:40,270
Solo verifica que sea verde.

84
00:05:40,350 --> 00:05:47,490
Así que ahora voy a cambiar los colores tres para que sean de color verde oscuro y eso es todo.

85
00:05:47,490 --> 00:05:57,300
Una nota rápida si hago algo como colores de 10 es igual a Violeta y presiono enter.

86
00:05:57,740 --> 00:05:59,450
Echemos un vistazo a cómo se ven los colores.

87
00:05:59,450 --> 00:06:06,280
Ahora puedes ver que obtengo el rojo anaranjado amarillo, verde oscuro y luego se muestra indefinido.

88
00:06:06,290 --> 00:06:08,060
Horas 6.

89
00:06:08,070 --> 00:06:14,610
Entonces, lo que sucedió aquí es que agregué a Violet un índice de 10 y eso nos deja con un montón de espacio

90
00:06:14,790 --> 00:06:18,030
en blanco entre el índice de 3 y el índice de 10.

91
00:06:18,060 --> 00:06:22,000
Entonces javascript crea espacios vacíos allí y llena algunos con indefinido.

92
00:06:22,290 --> 00:06:25,680
Así que hay un montón de espacio vacío en esta matriz que no es ideal.

93
00:06:25,680 --> 00:06:29,700
Entonces, en el siguiente video, les mostraré otra forma de agregar datos en los que no tenemos que

94
00:06:29,700 --> 00:06:33,690
hacer un seguimiento de cuántos elementos hay en nuestra matriz en un momento dado para concluir aquí.

95
00:06:33,690 --> 00:06:36,030
Tengo algunas otras notas sobre arreglos.

96
00:06:36,030 --> 00:06:40,130
El primero de ellos es que hay diferentes formas de definir matrices.

97
00:06:40,170 --> 00:06:44,460
La primera forma es definir una matriz vacía usando corchetes.

98
00:06:44,760 --> 00:06:48,960
En este caso, definí la matriz de un amigo, pero desafortunadamente no tengo amigos.

99
00:06:49,140 --> 00:06:51,200
Entonces solo son corchetes vacíos.

100
00:06:51,360 --> 00:06:57,670
La otra forma de definir una matriz que puede encontrar es escribir una nueva matriz con una A mayúscula

101
00:06:57,770 --> 00:06:59,560
y un paréntesis después de ella.

102
00:06:59,610 --> 00:07:05,130
Entonces no entraré en demasiados detalles sobre qué es esto, pero pienso en esto como una función.

103
00:07:05,130 --> 00:07:06,020
Es una función.

104
00:07:06,070 --> 00:07:07,570
Lo llamamos con paréntesis.

105
00:07:07,650 --> 00:07:10,520
Eso nos convierte en una nueva matriz como esta.

106
00:07:10,650 --> 00:07:12,840
Entonces estos son equivalentes en ambos casos.

107
00:07:12,840 --> 00:07:15,760
Tenemos una matriz de amigos que está vacía.

108
00:07:15,900 --> 00:07:19,370
El siguiente punto es que las matrices pueden contener cualquier tipo de datos.

109
00:07:19,560 --> 00:07:25,140
Así que solo los has visto hasta ahora con cadenas como Charlie y Liz, pero podemos

110
00:07:25,380 --> 00:07:32,130
llenarlos con números con booleanos sin definir con cadenas con otras matrices que se verán un poco más tarde.

111
00:07:32,340 --> 00:07:34,340
Entonces podemos llenar arreglos con todo tipo de datos.

112
00:07:34,590 --> 00:07:36,820
Y no todos tienen que ser de un tipo.

113
00:07:36,840 --> 00:07:43,170
Así que aquí hay un ejemplo con un número de booleano una cadena y no todo en una matriz.

114
00:07:43,230 --> 00:07:48,640
Lo último que señalaré es que las matrices también tienen una propiedad de longitud igual que las cadenas.

115
00:07:48,960 --> 00:07:54,960
En este ejemplo, estoy definiendo una matriz de cuatro elementos y no ejecuto nada sorprendente.

116
00:07:55,050 --> 00:07:56,430
Me da cuatro.

117
00:07:56,850 --> 00:07:59,490
Voy a seguir adelante y abrir mi cónsul y demostrar eso.

118
00:07:59,790 --> 00:08:04,400
Vamos a definir una nueva matriz aquí llamada perros y perros.

119
00:08:04,500 --> 00:08:07,370
Voy a definir una cadena.

120
00:08:07,510 --> 00:08:16,460
Rusty Wyatt y Ali simplemente así.

121
00:08:16,740 --> 00:08:24,040
Y si corro Dogstar finalmente, obtengo tres porque la longitud solo cuenta.

122
00:08:24,060 --> 00:08:25,480
¿Cuántas cosas hay ahí?

123
00:08:25,770 --> 00:08:31,140
Pero recuerde que el índice más alto en este conjunto es siempre uno menos que la longitud.

124
00:08:31,200 --> 00:08:37,630
Entonces, todo es un índice para el grupo de perros 2 y obtienes todo.

125
00:08:37,710 --> 00:08:39,660
Entonces eso es importante al igual que las cuerdas.

126
00:08:39,840 --> 00:08:46,230
Podemos definir un nombre var de cadena igual a resti y hacemos un enlace directo nombrado.

127
00:08:46,770 --> 00:08:54,000
Obtenemos 5 porque hay cinco caracteres, pero el índice de Y es índice para el nombre de cuatro.

128
00:08:54,180 --> 00:08:55,410
Me da por qué

129
00:08:55,410 --> 00:08:58,700
Porque los índices comienzan en cero.

130
00:08:58,710 --> 00:08:59,840
De acuerdo, así es para una carrera.

131
00:08:59,850 --> 00:09:02,780
Ahora en el próximo video vamos a tener un rápido conjunto de problemas.
