# Encontrar clave

Encuentra la primera clave con lodash _.findKey

> Página canónica: https://elysiatools.com/es/tools/find-key

- **Categoría:** Data Processing

- **Palabras clave:** encontrar, clave, lodash, objeto, predicado

## Descripción general

Encuentra la primera clave cuyo valor coincide con un predicado.

**Aspectos destacados:**
- Usa lodash `_.findKey`
- Soporta predicados de propiedad, matchesProperty o matches objeto
- Devuelve la primera clave o null

**Ejemplo:**
- Objeto: `{"a":{"active":false},"b":{"active":true}}`
- Tipo de predicado: `Property`
- Nombre de propiedad: `active`
- Resultado: `"b"`

## Entradas

- **Objeto** (textarea): Ingrese un objeto JSON
- **Tipo de Predicado** (select)
- **Nombre de Propiedad** (text): Nombre de propiedad true al usar predicado de propiedad
- **Ruta de Coincidencia** (text): Ruta de propiedad para matchesProperty
- **Valor de Coincidencia** (textarea): Valor JSON para coincidir
- **Objeto de Coincidencia** (textarea): Objeto JSON para coincidir

## Cuándo usarlo

- Cuando necesitas identificar la primera entrada en un objeto que cumple con un criterio de propiedad.
- Al filtrar estructuras de datos complejas para encontrar un elemento específico basado en una coincidencia de valor.
- Para depurar o extraer claves de configuración donde solo se requiere el primer resultado coincidente.

## Cómo funciona

- Ingresa tu objeto JSON en el campo principal.
- Selecciona el tipo de predicado (Propiedad, Coincidencia de Propiedad o Coincidencia de Objeto).
- Define los parámetros de búsqueda según el tipo de predicado elegido.
- Ejecuta la herramienta para obtener la primera clave encontrada o un valor nulo si no hay coincidencias.

## Casos de uso

- Identificar el primer usuario activo en una lista de usuarios indexada por ID.
- Localizar la primera configuración habilitada dentro de un archivo de parámetros.
- Extraer la clave de un producto que coincide con un estado de inventario específico.

## Preguntas frecuentes

### ¿Qué hace exactamente esta herramienta?

Busca en un objeto JSON y devuelve la primera clave cuyo valor satisface el predicado o condición que hayas configurado.

### ¿Qué librerías utiliza?

La herramienta utiliza la función _.findKey de la librería lodash para realizar la búsqueda de manera eficiente.

### ¿Qué sucede si no se encuentra ninguna coincidencia?

Si ningún valor dentro del objeto cumple con los criterios establecidos, la herramienta devolverá null.

### ¿Puedo buscar por un objeto completo?

Sí, seleccionando el tipo de predicado 'Coincide Objeto', puedes buscar una clave cuyo valor coincida con la estructura de otro objeto.

### ¿Es necesario que el JSON esté formateado?

Sí, el objeto ingresado debe ser un JSON válido para que la herramienta pueda analizar sus claves y valores correctamente.

## Herramientas relacionadas

- [Contar por](https://elysiatools.com/es/tools/count-by): Cuenta elementos por clave derivada con lodash _.countBy
- [Agrupar por](https://elysiatools.com/es/tools/group-by): Agrupa elementos por clave derivada con lodash _.groupBy
- [Primer Elemento](https://elysiatools.com/es/tools/head-item): Obtiene el primer elemento de un array usando lodash _.head
- [Índice De](https://elysiatools.com/es/tools/index-of): Encuentra el índice de un valor en un array usando lodash _.indexOf
- [Indice Ordenado](https://elysiatools.com/es/tools/sorted-index): Encuentra el indice de insercion con lodash _.sortedIndex
- [Cola del Array](https://elysiatools.com/es/tools/tail-items): Devuelve todos menos el primero con lodash _.tail
- [Tomar Elementos](https://elysiatools.com/es/tools/take-items): Toma los primeros N elementos con lodash _.take
- [Asignar con herencia](https://elysiatools.com/es/tools/assign-in-object): Asigna propiedades propias y heredadas con lodash _.assignIn

## Ejemplos

- [Muestras Avanzadas de Grafana](https://elysiatools.com/es/samples/grafana-samples): Muestras comprensivas de Grafana cubriendo diseño avanzado de dashboards, configuración de alertas, integración de fuentes de datos y desarrollo de plugins
- [Ejemplos de Códigos QR](https://elysiatools.com/es/samples/qrcode-samples): Imágenes de códigos QR de muestra para probar herramientas de lectura y generación de códigos QR
- [Ejemplos D3.js Data Visualization](https://elysiatools.com/es/samples/d3js-data-visualization): Ejemplos completos de visualización de datos D3.js incluyendo gráficos, mapas, animaciones y visualizaciones interactivas
- [Ejemplos de Rome Toolchain JavaScript](https://elysiatools.com/es/samples/rome): Ejemplos de toolchain JavaScript de Rome incluyendo configuración, linting, formatting, bundling y gestión de proyectos
