# Inverter objeto

Inverte chaves e valores com lodash _.invert

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

- **Categoria:** Data Processing

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

## Visão geral

Troca chaves e valores em um objeto.

**Destaques:**
- Usa lodash `_.invert`
- Valores viram chaves string
- Valores posteriores sobrescrevem chaves anteriores

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

## Entradas

- **Objeto** (textarea): Digite um objeto JSON

## Quando usar

- Quando você precisa realizar buscas rápidas baseadas em valores em vez de chaves.
- Ao remapear identificadores ou códigos de referência em estruturas de dados JSON.
- Para normalizar objetos onde os valores originais devem servir como identificadores únicos.

## Como funciona

- Cole o seu objeto JSON no campo de entrada.
- A ferramenta processa a estrutura utilizando a função _.invert do lodash.
- Os valores originais são convertidos em chaves do tipo string.
- O resultado é exibido como um novo objeto JSON com as posições invertidas.

## Casos de uso

- Inverter mapeamentos de tradução de idiomas.
- Transformar listas de IDs de produtos em chaves para acesso direto.
- Simplificar a busca de chaves a partir de valores conhecidos em configurações.

## Perguntas frequentes

### O que acontece se houver valores duplicados no objeto?

Como as chaves em um objeto devem ser únicas, o valor que aparecer por último no objeto original sobrescreverá as chaves anteriores.

### Quais tipos de dados são suportados?

A ferramenta processa objetos JSON padrão. Os valores originais serão convertidos para strings ao se tornarem chaves.

### A ferramenta altera o objeto original?

Não, a ferramenta gera um novo objeto invertido e não modifica seus dados de entrada.

### Posso usar objetos aninhados?

A função _.invert opera no primeiro nível do objeto. Estruturas aninhadas serão tratadas como valores e convertidas para strings.

### É necessário instalar algo?

Não, esta é uma ferramenta baseada em navegador que executa a lógica diretamente na sua sessão.

## Ferramentas relacionadas

- [Atribuir com heranca](https://elysiatools.com/pt/tools/assign-in-object): Atribui propriedades proprias e herdadas com lodash _.assignIn
- [Padroes profundos](https://elysiatools.com/pt/tools/defaults-deep): Aplica valores padrao profundos com lodash _.defaultsDeep
- [Inverter por](https://elysiatools.com/pt/tools/invert-by): Inverte agrupando por valores com lodash _.invertBy
- [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
- [Contar por](https://elysiatools.com/pt/tools/count-by): Conta itens por chave derivada com lodash _.countBy
- [Encontrar chave](https://elysiatools.com/pt/tools/find-key): Encontra a primeira chave com lodash _.findKey
- [Iterar objeto](https://elysiatools.com/pt/tools/for-in-object): Itera propriedades com lodash _.forIn

## 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
