Métodos de Array
Método: push
Adicionar um novo elemento no final do Array
.
const students = ["Luiz", "Maria", "João"];
students.push("Luiza");
console.log(students); // [ 'Luiz', 'Maria', 'João', 'Luiza' ]
OU
const students = ["Luiz", "Maria", "João"];
students[students.length] = "Luiza";
console.log(students); // [ 'Luiz', 'Maria', 'João', 'Luiza' ]
Método: unshift
Adicionar um novo elemento no começo do Array
.
const students = ["Luiz", "Maria", "João"];
students.unshift("Luiza");
console.log(students); // [ 'Luiza', 'Luiz', 'Maria', 'João' ]
Método: pop
Obter e remover o último elemento do Array
.
const students = ["Luiz", "Maria", "João"];
const lastStudent = students.pop();
console.log(lastStudent); // João
console.log(students); // [ 'Luiz', 'Maria' ]
Método: shift
Obter e remover o primeiro elemento do Array
.
const students = ["Luiz", "Maria", "João"];
const firstStudent = students.shift();
console.log(firstStudent); // Luiz
console.log(students); // [ 'Maria', 'João' ]
Método: delete
Remover um elemento do Array
a partir de um índice, porém esse elemento se torna do tipo undefined
.
const students = ["Luiz", "Maria", "João"];
delete students[1];
console.log(students); // [ 'Luiz', <1 empty item>, 'João' ]
console.log(students[1]); // undefined
Método: slice
Obter apenas os elementos dentro de um intervalo específico no Array
.
Observação
O parâmetro
end
do método não pertence ao intervalo a ser “fatiado”.
const students = ["Luiz", "Maria", "João", "Luiza", "Eduardo"];
console.log(students.slice(0, 3)); // [ 'Luiz', 'Maria', 'João' ]
console.log(students.slice(0, -2)); // [ 'Luiz', 'Maria', 'João' ]
Método: splice
Esse método “simula” as seguintes funções pop()
, shift()
, unshift()
, push()
.
Sintaxe
array.splice(
[índice],
[número de elementos a serem deletados],
[elementos a serem adicionados, separados por vírgula ...]
)
Exemplos
Simular o método pop()
const names = ["Eduardo", "Maria", "Joana", "Gabriel", "Júlia"];
const removedNames = names.splice(4, 1);
console.log(removedNames);
// [ 'Júlia' ]
const names = ["Eduardo", "Maria", "Joana", "Gabriel", "Júlia"];
const removedNames = names.splice(-2, 2);
console.log(removedNames); // [ 'Gabriel', 'Júlia' ]
Simular o método push()
const names = ["Eduardo", "Maria", "Joana", "Gabriel", "Júlia"];
const removedNames = names.splice(names.length, 0, "Luiz");
console.log(names, removedNames); // [ 'Eduardo', 'Maria', 'Joana', 'Gabriel', 'Júlia', 'Luiz' ] []
const names = ["Eduardo", "Maria", "Joana", "Gabriel", "Júlia"];
const removedNames = names.splice(3, 0, "Luiz");
console.log(names, removedNames); // [ 'Eduardo', 'Maria', 'Joana', 'Luiz', 'Gabriel', 'Júlia' ] []
No caso acima, o método splice()
não removeu nenhum elemento e adicionou o elemento "Luiz"
no índice passado como argumento (índice=3
).
Simular o método shift()
const names = ["Eduardo", "Maria", "Joana", "Gabriel", "Júlia"];
const removedNames = names.splice(0, 1);
console.log(names, removedNames); // [ 'Maria', 'Joana', 'Gabriel', 'Júlia' ] [ 'Eduardo' ]
Simular o método unshift()
const names = ["Eduardo", "Maria", "Joana", "Gabriel", "Júlia"];
const removedNames = names.splice(0, 0, "Luiz");
console.log(names, removedNames); // [ 'Luiz', 'Eduardo', 'Maria', 'Joana', 'Gabriel', 'Júlia' ] []
Operador: spread operator
Copiar todos os elementos de um Array
para um outro, além de ter a possibilidade de adicionar mais elementos nesse novo Array
.
let a = [1, 2, 3];
let b = [...a];
console.log(a, b); // [ 1, 2, 3 ] [ 1, 2, 3 ]
let a = [1, 2, 3];
let b = [...a, 4, 5];
console.log(a, b); // [ 1, 2, 3 ] [ 1, 2, 3, 4, 5 ]