Maison >interface Web >js tutoriel >encodeURI() vs encodeURIComponent() : quand utiliser lequel pour l'encodage d'URL ?
Escape vs. encodeURI / encodeURIComponent : considérations d'utilisation
Lors de l'encodage d'une chaîne de requête à envoyer à un serveur Web, le choix entre utiliser escape() et encodeURI() / encodeURIComponent() dépendent des besoins spécifiques du application.
escape()
escape() est une fonction héritée dont l'utilisation n'est plus recommandée. Il a été déprécié au profit de encodeURI() et encodeURIComponent() en raison de ses caractéristiques indésirables. Plus précisément, escape() encode les caractères spéciaux à l'exception de @*_ -./, et utilise une séquence d'échappement hexadécimale à deux chiffres pour les caractères avec une valeur d'unité de code égale ou inférieure à 0xFF. Ce format n'est pas autorisé dans une chaîne de requête, tel que défini dans la RFC3986.
encodeURI()
encodeURI() doit être utilisé lorsqu'une URL fonctionnelle est souhaitée. Il code les caractères qui ne font pas partie de la spécification URI, tels que les espaces et les caractères non alphanumériques. Cependant, encodeURI() n'encode pas le caractère '.
encodeURIComponent()
encodeURIComponent() doit être utilisé lors de l'encodage de la valeur d'un paramètre d'URL. Il code les caractères qui ne sont pas valides dans un composant URI, tels que les espaces et les caractères non alphanumériques. De plus, encodeURIComponent() n'encode pas le caractère '.
Consignes d'utilisation
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!