jq Playground

Pega JSON, escribe un filtro jq y ve el resultado al instante. Ejecuta el jq real compilado a WebAssembly, por completo en tu navegador.

Tu JSON se procesa localmente por jq ejecutándose como WebAssembly en tu navegador y nunca se sube, pero evita pegar secretos o datos de producción en cualquier herramienta.

¿Necesitas un JSONPath en lugar de jq? Prueba el Evaluador de JSONPath.

Acerca de jq Playground

Este jq playground te permite ejecutar filtros jq contra JSON sin instalar nada. Pega un documento JSON, escribe una expresión como .users | map(.name), .[] | select(.active) o group_by(.type), y el resultado aparece mientras escribes. Es el jq real 1.8.2 compilado a WebAssembly, así que los mismos filtros, funciones y sintaxis de tubería que usas en la línea de comandos funcionan aquí, incluidos map, select, sort_by, group_by, to_entries e interpolación de cadenas. Activa la salida en crudo (-r) para quitar las comillas de los resultados de cadena, o la salida compacta (-c) para poner cada valor en una sola línea. Los errores de compilación y de ejecución de jq se muestran para que puedas corregir un filtro rápidamente. Como jq se ejecuta como WebAssembly dentro de la página, el JSON que pegas se procesa localmente en tu dispositivo y nunca se sube a un servidor.

Características

Cómo usar jq Playground

  1. Pega o escribe tu JSON en el cuadro JSON.
  2. Escribe un filtro jq en el cuadro de filtro, por ejemplo .users | map(.name).
  3. Observa la salida actualizarse, o presiona Ejecutar / Cmd+Enter para evaluar de inmediato.
  4. Activa el modo crudo (-r) o compacto (-c) si necesitas un formato distinto.
  5. Haz clic en Copiar para tomar el resultado.

Ejemplo

Entrada

{
  "users": [
    { "name": "Ada", "active": true },
    { "name": "Linus", "active": false }
  ]
}

Salida

[
  "Ada"
]

El filtro .users | map(select(.active)) | map(.name) conserva solo los usuarios activos y devuelve sus nombres.

Errores comunes y solución de problemas

Preguntas frecuentes

¿Esto ejecuta el jq real?
Sí. Ejecuta jq compilado a WebAssembly, así que es el motor jq real, no una reimplementación en JavaScript. Los filtros, las funciones integradas y la semántica de tubería coinciden con el jq que ejecutas en una terminal.
¿Qué versión de jq es compatible?
jq 1.8.2, vía la compilación jq-wasm. Las funciones y la sintaxis disponibles en jq 1.8 (como group_by, to_entries, ltrimstr e interpolación de cadenas con \(...)) funcionan aquí.
¿Qué hacen los conmutadores de crudo (-r) y compacto (-c)?
La salida en crudo (-r) imprime los resultados de cadena sin las comillas alrededor, igual que el flag -r de jq. La salida compacta (-c) imprime cada valor JSON en una sola línea en lugar de embellecerlo, igual que el flag -c de jq.
¿Se sube mi JSON a algún lugar?
No. jq se ejecuta como WebAssembly dentro de esta página, así que el JSON que pegas y el filtro que escribes se evalúan localmente en tu dispositivo y no se envían a un servidor.
¿Por qué la primera ejecución es un poco más lenta?
El módulo WebAssembly de jq se descarga e inicializa la primera vez que ejecutas un filtro, por eso ves un breve estado de carga. Después de eso se mantiene en memoria y las ejecuciones posteriores son rápidas.
¿Puedo ejecutar filtros con select, map y group_by?
Sí. Expresiones como .[] | select(.active), .users | map(.name) y group_by(.type) funcionan todas, junto con el resto de las funciones de filtrado, transformación y agregación de jq.

Herramientas relacionadas

Todas las herramientas de ArrayKit