La fonction escape() en javascript | Développement Web

La fonction escape() en javascript

Dans tous les langages de programmation, un problème récurrent existe : il s’agit de la gestion des caractères spéciaux.

En javascript, nous disposons de 2 fonctions pour encoder et décoder les caractères spéciaux, il s’agit des fonctions escape() et unescape().

L’encodage réalisé à l’aide de la fonction escape() va encoder tous les caractères spéciaux sous la forme %NN est un nombre sous forme hexadécimale.

Fonction escape() et unescape()

   var mySpecialString = 'Voici des caractères spéciaux : # \' + &';

   document.write('mySpecialString non encodée : ' + mySpecialString);
   // Affiche "mySpecialString non encodée : Voici des caractères spéciaux : # ' + &"
   // Les caractères ne sont pas encodés

   document.write(escape(mySpecialString));
   // Affiche "Voici%20des%20caract%E8res%20sp%E9ciaux%20%3A%20%23%20%27%20+%20%26"
   // Ici les caractères sont encodés

   document.write(unescape(escape(mySpecialString)));
   // Affiche "Voici des caractères spéciaux : # ' + &"
   // Ici les caractères sont décodés

La fonction escape() peut être utile pour lire les cookies ou encore pour passer des paramètres dans l’url. A noter que si l’on applique la fonction escape() pour passer des paramètres dans une url et que l’on récupère ces paramètres en PHP avec $_GET, ces paramètres seront automatiquement décodés.