Maison > interface Web > js tutoriel > le corps du texte

Quelle est la différence entre les fonctions unescape() et escape() en JavaScript ?

WBOY
Libérer: 2023-08-24 12:13:08
avant
1621 Les gens l'ont consulté

JavaScript 中 unescape() 和 escape() 函数有什么区别?

JavaScript fournit deux fonctions pour gérer les chaînes encodées : escape() et unescape(). La fonction escape() est utilisée pour encoder une chaîne afin qu'elle puisse être utilisée en toute sécurité dans une URL. La fonction unescape() est utilisée pour décoder une chaîne codée.

Différences

La principale différence entre les deux fonctions est que escape() encode les caractères non-ASCII, tandis que unescape() ne décode que ces caractères. Cela signifie que si vous utilisez escape() sur une chaîne contenant uniquement des caractères ASCII, le résultat sera le même que la chaîne d'entrée. Cependant, si vous utilisez unescape() sur une chaîne contenant des caractères non-ASCII, le résultat peut différer de la chaîne d'entrée. La fonction

Use Cases

escape() est généralement utilisée lors de l'encodage de paramètres d'URL ou de segments de chemin. Par exemple, si vous souhaitez encoder la chaîne "Hello world!" à utiliser dans une URL, vous pouvez utiliser la fonction escape() comme indiqué ci-dessous -

var encodedString = escape("Hello world!");
Copier après la connexion

unescape() La fonction est généralement utilisée lors du décodage d'une URL. paramètres ou segments de chemin lorsqu’ils sont utilisés. Par exemple, si vous souhaitez décoder la chaîne "Hello%20world!" (qui est la version codée de "Hello world!"), vous pouvez utiliser la fonction unescape() comme indiqué ci-dessous -

var decodedString = unescape("Hello%20world!");
Copier après la connexion

Exemple

Voici l'exemple de code de travail complet -



   
<script> var encodedString = escape(&quot;Hello world!&quot;); var decodedString = unescape(encodedString); document.getElementById("result1").innerHTML = "Encoded String: " + encodedString document.getElementById("result2").innerHTML = "Decoded String: " + decodedString </script>
Copier après la connexion

Avantages

Voici les avantages de l'utilisation des fonctions escape() et unescape() - La fonction

  • escape() peut être utilisée pour encoder une chaîne à utiliser dans une URL. La fonction

  • unescape() peut être utilisée pour décoder des chaînes codées.

  • Ces fonctions peuvent être utilisées pour garantir que les chaînes peuvent être utilisées en toute sécurité dans les URL.

  • Ces fonctions peuvent être utilisées pour décoder les chaînes qui ont été codées pour être utilisées dans les URL.

Inconvénients

Voici quelques inconvénients liés à l'utilisation des fonctions escape() et unescape() -

  • Tous les navigateurs (y compris Internet Explorer 7 et versions antérieures) ne prennent pas en charge la fonction escape() . La fonction

  • unescape() peut être utilisée pour décoder des chaînes malveillantes, ce qui peut conduire à des failles de sécurité. Les fonctions

  • escape() et unescape() ne fonctionnent qu'avec les caractères ASCII. Si vous devez encoder/décoder une chaîne contenant des caractères non-ASCII, vous devez utiliser un schéma d'encodage/décodage différent, tel que UTF-8.

Conclusion h2>

En résumé, les fonctions escape() et unescape() sont utilisées respectivement pour encoder et décoder des chaînes. La principale différence entre ces deux fonctions est que escape() encode les caractères non-ASCII, tandis que unescape() ne décode que ces caractères. Ces fonctions peuvent être utilisées pour garantir que les chaînes peuvent être utilisées en toute sécurité dans les URL. Toutefois, ces fonctions ne doivent pas être utilisées pour décoder des chaînes codées à l'aide d'un schéma de codage différent (tel que UTF-8).

REMARQUE - Les fonctions escape() et unescape() sont obsolètes. Utilisez encodeURI ou encodeURIComponent() et utilisez plutôt decodeURI() ou decodeURIComponent().

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!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!