# Inverter por

Inverte agrupando por valores com lodash _.invertBy

> Página canônica: https://elysiatools.com/pt/tools/invert-by

- **Categoria:** Data Processing

- **Palavras-chave:** inverter, objeto, lodash, grupo, chaves

## Visão geral

Agrupa chaves por valores ou valores transformados.

**Destaques:**
- Usa lodash `_.invertBy`
- Agrupa chaves em arrays
- Iteratee de caminho opcional

**Exemplo:**
- Objeto: `{"a":"x","b":"x","c":"y"}`
- Resultado: `{"x":["a","b"],"y":["c"]}`

## Entradas

- **Objeto** (textarea): Digite um objeto JSON
- **Caminho do Iteratee** (text): Caminho de propriedade opcional para transformar valores

## Quando usar

- Quando você precisa consolidar chaves que compartilham o mesmo valor em um único grupo.
- Ao transformar uma lista de mapeamentos simples em uma estrutura de categorias invertida.
- Para organizar dados complexos onde o valor original deve se tornar a chave principal de um novo objeto.

## Como funciona

- Insira o seu objeto JSON no campo de entrada principal.
- Opcionalmente, forneça um caminho de propriedade no campo 'Caminho do Iteratee' para transformar os valores antes do agrupamento.
- A ferramenta processa o objeto e retorna um novo JSON onde os valores originais são as chaves e as chaves originais são agrupadas em arrays.

## Casos de uso

- Agrupar IDs de usuários por seus respectivos níveis de permissão.
- Classificar itens de inventário com base em seus status ou categorias.
- Reorganizar configurações de sistema para facilitar a busca por valores comuns.

## Perguntas frequentes

### O que a ferramenta faz exatamente?

Ela inverte um objeto JSON, transformando os valores em chaves e agrupando as chaves originais que possuíam o mesmo valor em um array.

### O que é o 'Caminho do Iteratee'?

É um parâmetro opcional que permite aplicar uma transformação ou acessar uma propriedade específica do valor antes de realizar o agrupamento.

### A ferramenta suporta objetos aninhados?

Sim, desde que o JSON fornecido seja um objeto válido, a ferramenta processará os pares de chave-valor conforme a lógica do lodash _.invertBy.

### O que acontece se dois valores forem iguais?

As chaves originais correspondentes a esses valores serão agrupadas juntas no mesmo array dentro do objeto resultante.

### Preciso instalar algo para usar?

Não, esta é uma ferramenta baseada na web que processa seus dados diretamente no navegador.

## Ferramentas relacionadas

- [Contar por](https://elysiatools.com/pt/tools/count-by): Conta itens por chave derivada com lodash _.countBy
- [Padroes profundos](https://elysiatools.com/pt/tools/defaults-deep): Aplica valores padrao profundos com lodash _.defaultsDeep
- [Agrupar por](https://elysiatools.com/pt/tools/group-by): Agrupa itens por chave derivada com lodash _.groupBy
- [Inverter objeto](https://elysiatools.com/pt/tools/invert-object): Inverte chaves e valores com lodash _.invert
- [Lista de chaves herdadas](https://elysiatools.com/pt/tools/keys-in-list): Lista chaves proprias e herdadas com lodash _.keysIn
- [Lista de chaves](https://elysiatools.com/pt/tools/keys-list): Lista chaves proprias com lodash _.keys
- [Unzip de Arrays](https://elysiatools.com/pt/tools/unzip-arrays): Separa arrays agrupados com lodash _.unzip
- [Zip de Arrays](https://elysiatools.com/pt/tools/zip-arrays): Combina arrays por indice com lodash _.zip

## Exemplos

- [Exemplos Avançados de Aplicação Grafana](https://elysiatools.com/pt/samples/grafana-samples): Exemplos compreensivos de Grafana cobrindo design avançado de dashboards, configuração de alertas, integração de fontes de dados e desenvolvimento de plugins
- [Exemplos de Códigos QR](https://elysiatools.com/pt/samples/qrcode-samples): Imagens de código QR de exemplo para testar ferramentas de leitura e geração de código QR
- [Exemplos D3.js Data Visualization](https://elysiatools.com/pt/samples/d3js-data-visualization): Exemplos abrangentes de visualização de dados D3.js incluindo gráficos, mapas, animações e visualizações interativas
- [Exemplos Rome JavaScript Toolchain](https://elysiatools.com/pt/samples/rome): Exemplos de toolchain JavaScript Rome incluindo configuração, linting, formatting, bundling e gerenciamento de projetos
