La codificación URL (codificación porcentual) es el proceso de convertir caracteres no seguros en URL al formato %XX. Las URL solo pueden contener un pequeño subconjunto de caracteres ASCII (letras, dígitos, -_.~), todos los demás caracteres (incluidos chino, espacios, símbolos especiales) deben codificarse antes de transmitirse en URL. Por ejemplo, el espacio se codifica como %20, el carácter chino '中' como %E4%B8%AD.
**encodeURIComponent vs encodeURI**: Estas son las dos funciones de codificación más utilizadas. encodeURIComponent codifica más exhaustivamente, incluidos delimitadores de parámetros como &, =, ?, por lo que es adecuada para codificar valores de parámetros individuales. encodeURI conserva la estructura URL (protocolo://, ruta, /, ?, #), por lo que es adecuada para codificar URL completas. Usarlas incorrectamente causa errores de análisis de parámetros.
**RFC 3986 vs estándares antiguos**: RFC 3986 trata la virgulilla ~ como un carácter seguro que no requiere codificación, mientras que los estándares tempranos lo codifican como %7E. Usar RFC 3986 reduce escapes innecesarios, mejora la legibilidad de URL y evita problemas de análisis de %7E en algunos servidores.
**Modo Query Only**: Se usa cuando solo necesitas codificar los valores de los parámetros de consulta en URL, sin afectar los nombres de clave, signos igual y símbolos &. Por ejemplo, ?name=张三 se codifica como ?name=%E5%BC%A0%E4%B8%89, manteniendo los nombres de clave legibles y codificando solo los valores.
**Resaltado de codificación**: Resalta en tiempo real los caracteres en formato %XX en color ámbar para que los usuarios vean de un vistazo qué caracteres se codificaron. Esto ayuda a entender las reglas de codificación: las letras y números generalmente son caracteres seguros que no se codifican, solo el chino y símbolos especiales se codifican. Todos los cálculos se realizan localmente en el navegador, sin subida de datos.