🚀 O Poder da Teoria dos Conjuntos na Programação: Lodash como Aliado na União e Diferença de Dados

Published: (December 27, 2025 at 05:49 PM EST)
2 min read
Source: Dev.to

Source: Dev.to

O Conceito de Conjunto (Set)

Vamos ver como o Lodash nos ajuda a aplicar isso na prática, comparando-o com o código JavaScript “puro”.

Exemplo 1: União (Combinando Listas sem Duplicatas)

Objetivo: Obter uma lista única de todos os usuários.

const A = [1, 2, 3];
const B = [3, 4, 5];

// Usamos o Set nativo para desduplicar
const uniao = [...new Set([...A, ...B])];

// Resultado: [1, 2, 3, 4, 5]

Com Lodash (_.union)

const A = [1, 2, 3];
const B = [3, 4, 5];
const uniao = _.union(A, B);

// Resultado: [1, 2, 3, 4, 5]

Ganho: O Lodash reduz a operação complexa de concatenação e desduplicação a uma única função, tornando a intenção do código imediata. A legibilidade é máxima.

Exemplo 2: Diferença (Encontrando Exclusividades)

JavaScript Normal (Manual)

const A = [1, 2, 3, 6];
const B = [3, 4, 5];

// Usamos filter e includes, com complexidade O(N*M)
const diferenca = A.filter(item => !B.includes(item));

// Resultado: [1, 2, 6]

Com Lodash (_.difference)

const A = [1, 2, 3, 6];
const B = [3, 4, 5];
const diferenca = _.difference(A, B);

// Resultado: [1, 2, 6]

Ganho: Além da simplicidade sintática, _.difference costuma ser implementado de forma mais eficiente (utilizando hash maps internamente) do que a solução filter + includes manual, oferecendo melhor performance em grandes conjuntos de dados. Ele transforma uma lógica imperativa (filter) em uma declaração de conjunto (difference).

Conclusão: Por Que Mudar a Mentalidade?

Adotar a mentalidade da Teoria dos Conjuntos ao manipular arrays em JavaScript simplifica o código, melhora a legibilidade e pode trazer ganhos de performance. Bibliotecas como o Lodash fornecem funções prontas que expressam claramente operações de união, diferença, interseção e outras, permitindo que você escreva código mais declarativo e focado na lógica de negócio.

Back to Blog

Related posts

Read more »

Function, Objects and Array In JS.

Functions A function is a block of code that performs a specific task and can be reused. There are three ways to define a function in JavaScript: 1. Function D...