Como Remover Valores Duplicados Em Array De Objetos

Em uns posts anteriores, falei sobre como podemos remover valores duplicados em um ARRAY.

Mas e se fosse um ARRAY de OBJETOS? A abordagem que ensinei no post não funciona, já que como falei, é um array de objetos.

Além de não funcionar, não podemos simplesmente implementar um loop dentro de um loop (um forEach com um some, por exemplo), ou melhor dizendo, até podemos, mas esse algoritmo teria sua complexidade O(n²) o que é extremamente LENTO em caso de arrays maiores.

Neste código abaixo, demonstro como podemos criar nossa função de remover valores repetidos em um array:

Ler mais

Metodo At, Encontrando O Último Elemento - ES2022

Uma coisa que normalmente precisamos fazer em nosso desenvolvimento diário é pegar o último elemento de um array ou uma String.
Atualmente (2022) para realizar isso, fazemos da seguinte forma:

1
2
3
4
5
6
7
const arrayFrutas = ['banana', 'maçã', 'laranja', 'goiaba'];
console.log(arrayFrutas[arrayFrutas.length -1])
// Saída: goiaba

const fruta = 'mexerica';
console.log(fruta[fruta.length -1])
// Saída: a

Mas agora, com o novo método implementado na versão do ECMAScript 2022, podemos procurar por index negativo! Igual fazemos com Python

Ler mais

Como Mover Um Item No Array Para a Última Posição

Para mover um elemento (que você sabe o Index) para o final do array, basta fazer isso:

1
2
const index = 2;
array.push(array.splice(index, 1)[0]);

Agora, se você não sabe o index, pode fazer o seguinte:

1
2
const index = array.findIndex(element => element));
array.push(array.splice(index, 1)[0]);

Exemplo:

1
2
3
const arr = [1, 2, 6, 3, 4, 5];
arr.push(arr.splice(arr.indexOf(6), 1)[0]);
console.log(arr); // [1, 2, 3, 4, 5, 6]