Qué hace esta herramienta
Convierte un texto cualquiera en algo que puedes pegar entre comillas en JavaScript o TypeScript sin romper el literal:
- las barras invertidas se duplican, para que
C:\rutasiga siendo una ruta y no una secuencia de escape; ',"y`se escapan todos, así que el resultado vale en los tres estilos de comillas;- salto de línea, retorno de carro, tabulación, retroceso, salto de página y tabulación vertical toman su forma con nombre —
\n,\r,\t,\b,\f,\v; - cualquier otro carácter por debajo de U+0020 pasa a
\uXXXX. NUL es uno de ellos: sale en la forma U+0000 escapada, no como secuencia con nombre. Por encima de ASCII hay exactamente dos excepciones: U+2028 y U+2029, los separadores de línea Unicode. En crudo dentro de un literal eran un error de sintaxis antes de ES2019 y siguen rompiendo uno incrustado en una etiqueta<script>, así que salen como\u2028y\u2029.
Los caracteres por encima de ASCII se dejan intactos a propósito. Los ficheros JavaScript son UTF-8, "café" es a la vez válido y legible, y escaparlo a "caf\u00e9" solo haría el literal más difícil de leer.
Cuándo la necesitas
Incrustar a mano un fragmento, un trozo de expresión regular, una línea de log o un pedazo de JSON en un fichero .js o .ts. También para cargas de JSON.parse escritas en línea, donde una comilla sin escapar trunca la cadena en silencio.
Qué no hace
Escapa para un literal de cadena, no para un marcador de plantilla. Si tu salida acaba dentro de `...${x}...`, la secuencia ${ se sigue interpretando: la herramienta escapa el acento grave pero no neutraliza la interpolación.
Privado por diseño
Todo se ejecuta localmente en tu navegador con JavaScript. Tus datos nunca se suben a un servidor, lo que hace que la herramienta sea segura para contenido sensible y funcione sin conexión.