Introdução aos Arrays - JavaScript
Arrays são projetados para trabalhar com conjuntos de dados. Para criar um array, utilizam-se colchetes []
Definição mais simples de um array:
const myArray = [];
Neste caso, criamos um array chamado myArray
const people = ["Tom", "Alice", "Sam"];
console.log(people); // ["Tom", "Alice", "Sam"];
Neste caso, o array myArray
Índice | Elemento |
---|---|
0 | Tom |
1 | Alice |
2 | Sam |
Para acessar elementos individuais do array, usam-se os índices. A contagem começa do zero, ou seja, o primeiro elemento terá o índice 0, e o último, 2:
const people = ["Tom", "Alice", "Sam"];
console.log(people[0]); // Tom
const person3 = people[2]; // Sam
console.log(person3); // Sam
Se tentarmos acessar um elemento com um índice maior que o tamanho do array, obteremos undefined
const people = ["Tom", "Alice", "Sam"];
console.log(people[7]); // undefined
Também se define valores para elementos do array por meio de índices:
const people = ["Tom", "Alice", "Sam"];
console.log(people[0]); // Tom
people[0] = "Bob";
console.log(people[0]); // Bob
Ao contrário de outras linguagens, como C# ou Java, é possível definir um elemento que inicialmente não estava definido:
const people = ["Tom", "Alice", "Sam"];
console.log(people[7]); // undefined - o array tem apenas três elementos
people[7] = "Bob";
console.log(people[7]); // Bob
Vale notar que, arrays em JavaScript não são estritamente tipados, um mesmo array pode conter dados de diferentes tipos:
const objects = ["Tom", 12, true, 3.14, false];
console.log(objects);
Arrays Multidimensionais
Arrays podem ser unidimensionais ou multidimensionais. Cada elemento em um array multidimensional pode ser um array separado. Anteriormente, discutimos um array unidimensional, agora vamos criar um array multidimensional:
const numbers1 = [0, 1, 2, 3, 4, 5]; // array unidimensional
const numbers2 = [[0, 1, 2], [3, 4, 5]]; // array bidimensional
Visualmente, ambos os arrays podem ser representados da seguinte forma:
Array unidimensional numbers1
0 | 1 | 2 | 3 | 4 | 5 |
Array bidimensional numbers2
0 | 1 | 2 |
3 | 4 | 5 |
Como o array numbers2 é bidimensional, ele representa uma tabela simples. Cada um de seus elementos pode ser um array separado.
Vamos considerar outro array bidimensional:
const people = [
["Tom", 25, false],
["Bill", 38, true],
["Alice", 21, false]
];
console.log(people[0]); // ["Tom", 25, false]
console.log(people[1]); // ["Bill", 38, true]
O array people pode ser representado na seguinte tabela:
Tom | 25 | false |
Bill | 38 | true |
Alice | 21 | false |
Para acessar um elemento individual do array, também se usa um índice:
const tomInfo = people[0];
Agora, a variável tomInfo
console.log("Nome: ", people[0][0]); // Tom
console.log("Idade: ", people[0][1]); // 25
Se visualmente um array bidimensional pode ser representado como uma tabela, então o elemento people[0][1]
Também podemos fazer atribuições:
const people = [
["Tom", 25, false],
["Bill", 38, true],
["Alice", 21, false]
];
people[0][1] = 56; // atribuímos um valor específico
console.log(people[0][1]); // 56
people[1] = ["Bob", 29, false]; // atribuímos um array
console.log(people[1][0]); // Bob
Ao criar arrays multidimensionais, não estamos limitados apenas a arrays bidimensionais, mas também podemos usar arrays de maiores dimensões:
const numbers = [];
numbers[0] = []; // agora numbers é um array bidimensional
numbers[0][0] = []; // agora numbers é um array tridimensional
numbers[0][0][0] = 5; // o primeiro elemento do array tridimensional é 5
console.log(numbers[0][0][0]);