Evaluador de JSONPath Online
Prueba una expresión JSONPath contra tu JSON y ve las coincidencias en vivo, directamente en tu navegador. Tus datos se quedan en tu dispositivo.
Tu JSON se analiza y se consulta localmente en tu navegador y nunca se sube, pero evita pegar datos de producción sensibles en cualquier herramienta en línea.
¿Necesitas leer primero el árbol completo? Prueba el Visor de JSON.
Acerca de Evaluador de JSONPath
Este evaluador de JSONPath te permite consultar un documento JSON con una expresión JSONPath y ver cómo las coincidencias se actualizan mientras escribes. Pega cualquier objeto o arreglo JSON, ingresa una ruta como $.store.book[*].author, $..price o $.items[?(@.active)], y la herramienta muestra cuántos nodos coincidieron, los valores coincidentes como JSON embellecido y un conmutador para ver en cambio los JSON Pointers. Como probador de JSONPath admite la sintaxis completa: la raíz $, el acceso a hijos con punto y corchetes, el operador de descenso recursivo .., los comodines [*], los cortes de arreglo, las uniones y las expresiones de filtro con @ y comparaciones. Haz clic en cualquiera de las expresiones de ejemplo para soltarla en el cuadro de consulta. El JSON inválido y las rutas rotas producen un error claro en lugar de una pantalla en blanco. Todo se ejecuta en tu navegador, así que el JSON que evalúas se queda en tu dispositivo.
Características
- Resultados en vivo: el conteo de coincidencias, los valores y las rutas se actualizan mientras editas el JSON o la expresión
- Alterna entre los valores coincidentes (JSON embellecido) y la ruta del JSON Pointer de cada coincidencia
- Admite descenso recursivo ($..), comodines ([*]), cortes de arreglo, uniones y expresiones de filtro
- Filtra por el contenido de los nodos con predicados estilo [?(@.price < 10)] o [?(@.active)]
- Expresiones de ejemplo en las que se puede hacer clic y que llenan el cuadro de consulta con un toque
- Errores distintos para JSON inválido frente a una expresión JSONPath inválida
- Copia los valores coincidentes o la lista de rutas con un clic
- Maneja objetos profundamente anidados y arreglos grandes sin salir de la página
Cómo usar Evaluador de JSONPath
- Pega o escribe tu JSON en el panel JSON a la izquierda.
- Ingresa una expresión JSONPath en el cuadro de consulta, o haz clic en uno de los ejemplos.
- Lee los valores coincidentes a la derecha y revisa el conteo de coincidencias arriba de ellos.
- Cambia a Rutas para ver el JSON Pointer de cada coincidencia, luego Copia los resultados.
Ejemplo
Entrada
$.store.book[?(@.price < 10)].title
Salida
[
"Sayings of the Century",
"Moby Dick"
]
Una expresión de filtro conserva solo los libros más baratos que 10, luego proyecta cada título.
Errores comunes y solución de problemas
- El panel de resultados muestra "Invalid JSON" antes de que hayas escrito ninguna ruta. — Corrige primero el JSON en el panel izquierdo; una coma final, comillas simples o una clave sin comillas impedirán que se analice. Pásalo por un formateador de JSON si no estás seguro.
- Un filtro como [?(@.price < 10)] no devuelve coincidencias aunque el campo existe. — Los filtros comparan valores en crudo, así que asegúrate de que el campo sea un número, no una cadena, y de que @ se refiera a cada elemento del arreglo. Entrecomilla las comparaciones de cadena, por ejemplo [?(@.color=="red")].
- $.book[0] no devuelve nada pero $..book[0] funciona. — $. solo sigue la ruta exacta desde la raíz. Si book está anidado, escribe la ruta completa o usa el operador de descenso recursivo .. para buscar a cualquier profundidad.
Preguntas frecuentes
- ¿Cuál es la diferencia entre $.. y $. en JSONPath?
- $. sigue una ruta exacta nivel por nivel desde la raíz, así que $.store.book coincide solo con una clave book directamente bajo store. $.. es el operador de descenso recursivo: $..book encuentra cada clave book a cualquier profundidad del documento. Usa $.. cuando no estés seguro de dónde vive un campo.
- ¿Este evaluador de JSONPath admite expresiones de filtro?
- Sí. Los filtros usan la sintaxis [?(...)] donde @ es el nodo actual, por ejemplo $.items[?(@.active)] o $.store.book[?(@.price < 10)]. Puedes comparar números, cadenas y booleanos y combinar condiciones con && y ||.
- ¿Qué muestra el conmutador de Rutas?
- Devuelve un JSON Pointer por cada coincidencia en lugar del valor: una cadena como /store/book/0/author que ubica el nodo en el documento. Los punteros son útiles cuando necesitas saber dónde vive un valor, no solo qué es.
- ¿Por qué mi expresión coincide con más resultados de los que esperaba?
- Los comodines y el descenso recursivo son codiciosos: [*] coincide con cada elemento de un arreglo o cada propiedad de un objeto, y $.. recorre todo el árbol. Acota el resultado con una clave específica, un índice, un corte de arreglo como [0:2] o un filtro.
- ¿Puedo seleccionar varios elementos de un arreglo a la vez?
- Sí. Usa una unión como [0,2] para elegir índices específicos, o un corte como [1:3] para un rango y [-1:] para el último elemento. Ambos funcionan en cualquier arreglo alcanzado por la ruta.
- ¿Se envía mi JSON a algún lugar cuando ejecuto una consulta?
- No. La expresión se evalúa por completo en tu navegador, así que el JSON que pegas y las consultas que ejecutas se procesan localmente en tu dispositivo y no se suben.
Herramientas relacionadas
- Formateador de JSON — Embellece, minimiza y valida JSON con la ubicación de los errores.
- Visor de JSON — Visor de texto y árbol plegable con expandir/contraer y rutas de nodos.
- JSON Flatten / Unflatten — Aplana JSON anidado a claves con notación de puntos, o vuelve a anidarlo.
- JSON Diff — Compara dos documentos JSON con un diff estructural por rutas.
- JSON a CSV — Convierte un arreglo de objetos JSON planos a CSV.
- YAML ↔ JSON — Convierte YAML a JSON y de vuelta.
Todas las herramientas de ArrayKit