← Volver a guías
Codificación de URL en JavaScript — encodeURI, encodeURIComponent y buenas prácticas
· Etiquetas: javascript, url-encoding, encodeURIComponent, encodeURI, programming
JavaScript proporciona dos funciones integradas para la codificación de URL:
encodeURIComponent()
Codifica todos los caracteres excepto: A-Z a-z 0-9 - _ . ! ~ * ' ( )
const name = 'John Doe'
const query = '?name=' + encodeURIComponent(name)
// ?name=John%20Doe
Use esta función para codificar valores individuales de parámetros de consulta, segmentos de ruta o cualquier dato que pase a formar parte de una URL.
encodeURI()
Codifica todos los caracteres excepto los anteriores más los caracteres reservados de URL: : / ? # [ ] @ ! $ & ' ( ) * + , ; =
const url = 'https://example.com/search?q=hello world'
const encoded = encodeURI(url)
// https://example.com/search?q=hello%20world
Use esta función al codificar una cadena de URL completa.
Error común
// WRONG — breaks the URL structure
encodeURIComponent('https://example.com/page')
// https%3A%2F%2Fexample.com%2Fpage
// RIGHT — preserves structure
encodeURI('https://example.com/page')
// https://example.com/page
Pruebe estas funciones en vivo con nuestra herramienta de codificador/decodificador de URL.