Formateador de JavaScript
Formatea JavaScript y TypeScript usando Prettier, con control sobre indentación, punto y coma y estilo de comillas. Un analizador real, así que los literales de plantilla, expresiones regulares y JSX se manejan correctamente.
- Los archivos nunca salen de tu dispositivo
- Gratis, sin registro
- Sin marcas de agua
- Funciona sin conexión una vez cargado
Cómo formateador de javascript
- 1
Pega tu código
JavaScript, TypeScript o JSX.
- 2
Establece tu estilo
Indentación, punto y coma y preferencia de comillas.
- 3
Copia el resultado
Formateado exactamente como lo haría Prettier en tu editor.
Por qué formatear JavaScript realmente requiere ejecutar Prettier
Prettier no es meramente la inspiración para la salida de formateo de esta herramienta — es el propio paquete Prettier, descargado y ejecutado en tu navegador en lugar de a través de Node en un servidor, así que el resultado es idéntico byte por byte a lo que produciría ejecutar `npx prettier` localmente con la misma configuración. Esa distinción importa porque el formateo de JavaScript es genuinamente difícil de aproximar: hacerlo bien requiere analizar completamente el lenguaje, no compararlo con patrones, y un formateador que solo aproxima el comportamiento de Prettier discrepará con la configuración real de Prettier de un proyecto exactamente en los casos extremos donde importa — dentro de un decorador, un tipo genérico complejo, o una expresión JSX inusual.
Por qué los formateadores ingenuos de JavaScript se rompen en código real
JavaScript contiene varias construcciones que hacen que un enfoque simple de contar llaves y punto y coma falle directamente. Los literales de plantilla pueden contener texto arbitrario entre acentos graves, incluyendo caracteres que parecen exactamente código — `` `function() { return "not real code"; }` `` es un solo valor de cadena, no tres sentencias, y un formateador que no rastrea los límites de los literales de plantilla lo malinterpretará. Los literales de expresión regular son peores: `/{}/` contiene caracteres que parecen llaves pero forman parte del propio patrón de la expresión regular, no sintaxis estructural. La inserción automática de punto y coma añade una tercera capa de dificultad, ya que JavaScript permite omitir puntos y coma en muchos contextos e infiere dónde termina una sentencia según reglas que un formateador ingenuo basado en líneas no tiene forma de replicar correctamente. Analizar realmente el lenguaje en un árbol de sintaxis adecuado, como hace Prettier, es lo que evita los tres modos de fallo — un formateador atajo que se equivoca aunque sea en uno de ellos en código de producción es un riesgo, no una conveniencia.
Lo que Prettier deliberadamente no hace
Prettier formatea código — estandariza espacios en blanco, saltos de línea, estilo de comillas y elecciones presentacionales similares — y explícitamente no comprueba si el código es correcto, seguro de tipos, o libre de errores. Un archivo con un error de tipo, una referencia a variable indefinida, o un error lógico se formatea sin quejarse siempre que sea sintácticamente válido, porque formatear y verificar tipos son preocupaciones separadas manejadas por herramientas separadas. El propio compilador de TypeScript, o un linter como ESLint, es donde se comprueba la corrección; el trabajo de esta herramienta termina en hacer que el código tenga un estilo consistente y legible.
Por qué los equipos se decantan por un estilo compartido en lugar de discutir sobre ello
Tabulaciones frente a espacios, comillas simples frente a dobles, punto y coma o no — ninguna de estas elecciones afecta significativamente cómo se ejecuta el código, y los desacuerdos sobre ellas solían consumir tiempo real en discusiones de revisión de código que no tenían nada que ver con la corrección. La verdadera propuesta de valor de Prettier es eliminar por completo ese debate de la mesa: un conjunto pequeño y con criterio propio de reglas de formateo aplicadas automática e idénticamente en todas partes significa que el debate se resuelve una vez, en la configuración, en lugar de repetidamente en cada pull request de ahí en adelante.
Igualar la configuración específica de un proyecto
Cada opción expuesta aquí — ancho de indentación, punto y coma, estilo de comillas — refleja un ajuste real de configuración de Prettier, así que pegar código de un proyecto con un `.prettierrc` conocido e igualar esos mismos ajustes aquí reproduce exactamente lo que produciría la propia herramienta de ese proyecto, sin necesidad de instalar nada localmente solo para comprobar cómo se formatearía un fragmento.
Preguntas frecuentes
¿Es lo mismo que ejecutar Prettier localmente?
Sí — es el propio Prettier, ejecutándose en tu navegador en lugar de en Node. Con las mismas opciones obtienes una salida idéntica byte por byte a `npx prettier` en el mismo archivo.
¿Por qué no usar un formateador más simple?
Porque los formateadores ingenuos rompen código real. Las llaves dentro de literales de plantilla y expresiones regulares, JSX, y la inserción automática de punto y coma todos requieren analizar realmente el lenguaje. Un formateador que corrompe silenciosamente un archivo de cada cincuenta es peor que ninguno.
¿Funciona con TypeScript y JSX?
Sí. Las anotaciones de tipo, los genéricos, los decoradores y JSX se analizan todos. Ten en cuenta que solo formatea — no verifica tipos ni compila.
¿Por qué falló el formateo?
El código tiene un error de sintaxis — Prettier debe analizarlo antes de poder imprimirlo. El mensaje incluye la línea y columna del primer problema, que normalmente es suficiente para encontrarlo.
¿Se envía mi código a un servidor?
No. Prettier se descarga a tu navegador y se ejecuta ahí. El código propietario nunca sale de tu máquina, lo cual no es cierto en la mayoría de formateadores online.
Tareas habituales de formateador de javascript
También podrías necesitar
Formateador de JSON
Formatea, valida y minifica JSON al instante
Formateador de HTML
Embellece e indenta HTML correctamente
Formateador de CSS
Embellece o minifica hojas de estilo
Codificador y decodificador Base64
Codifica y decodifica Base64 y Base64URL
Minificador de CSS
Reduce hojas de estilo con un minificador que realmente entiende CSS
Generador de hash
MD5, SHA-1, SHA-256, SHA-384 y SHA-512
Minificador de JS
Reduce JavaScript con una minificación real, no con expresiones regulares
Decodificador de JWT
Decodifica e inspecciona JSON Web Tokens