Rumah  >  Artikel  >  hujung hadapan web  >  Apakah perbezaan antara fungsi unescape() dan escape() dalam JavaScript?

Apakah perbezaan antara fungsi unescape() dan escape() dalam JavaScript?

WBOY
WBOYke hadapan
2023-08-24 12:13:081600semak imbas

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

JavaScript menyediakan dua fungsi untuk mengendalikan rentetan yang dikodkan: escape() dan unescape(). Fungsi escape() digunakan untuk mengekod rentetan supaya ia boleh digunakan dengan selamat dalam URL. Fungsi unescape() digunakan untuk menyahkod rentetan yang dikodkan.

Perbezaan

Perbezaan utama antara kedua-dua fungsi ialah escape( ) mengekod aksara bukan ASCII, manakala unescape() hanya menyahkod aksara ini. Ini bermakna jika anda menggunakan escape() pada rentetan yang mengandungi hanya aksara ASCII, hasilnya akan sama dengan rentetan input. Walau bagaimanapun, jika anda menggunakan unescape() pada rentetan yang mengandungi aksara bukan ASCII, hasilnya mungkin berbeza daripada rentetan input. Fungsi

Use Cases

escape() biasanya digunakan apabila mengekod parameter URL atau segmen laluan. Sebagai contoh, jika anda ingin mengekod rentetan "Hello world!" untuk digunakan dalam URL, anda boleh menggunakan fungsi escape() seperti yang ditunjukkan di bawah -

var encodedString = escape("Hello world!");

unescape() Fungsi ini biasanya digunakan semasa menyahkod URL parameter atau segmen laluan apabila digunakan. Contohnya, jika anda ingin menyahkod rentetan "Hello%20world!" (iaitu versi "Hello world!" yang dikodkan), anda boleh menggunakan fungsi unescape() seperti yang ditunjukkan di bawah -

var decodedString = unescape("Hello%20world!");

Contoh

Ini adalah Contoh Kod kerja lengkap -



   
<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>

Faedah

Berikut ialah faedah menggunakan fungsi escape() dan unescape() - Fungsi

  • escape() boleh digunakan untuk mengekod rentetan()

    untuk digunakan dalam URL. Fungsi
  • unescape()

    boleh digunakan untuk menyahkod rentetan yang dikodkan.
  • Fungsi ini boleh digunakan untuk memastikan rentetan selamat untuk digunakan dalam URL
  • Fungsi ini boleh digunakan untuk menyahkod rentetan yang telah dikodkan untuk digunakan dalam URL. . Fungsi

unescape() boleh digunakan untuk menyahkod rentetan berniat jahat, yang mungkin membawa kepada kelemahan keselamatan. Fungsi

    escape()
  • dan

    unescape() hanya berfungsi dengan aksara ASCII. Jika anda perlu mengekod/menyahkod rentetan yang mengandungi aksara bukan ASCII, anda harus menggunakan skema pengekodan/penyahkodan yang berbeza, seperti UTF-8.

  • Kesimpulan

    Ringkasnya, fungsi escape()

    dan
  • unescape()
  • digunakan untuk mengekod dan menyahkod rentetan masing-masing. Perbezaan utama antara kedua-dua fungsi ini ialah

    escape() mengekod aksara bukan ASCII, manakala unescape() hanya menyahkod aksara ini. Fungsi ini boleh digunakan untuk memastikan bahawa rentetan selamat untuk digunakan dalam URL. Walau bagaimanapun, fungsi ini tidak boleh digunakan untuk menyahkod rentetan yang dikodkan menggunakan skema pengekodan yang berbeza (seperti UTF-8).

  • NOTA
- Fungsi

escape() h2> dan

unescape() telah ditamatkan. Gunakan encodeURI atau encodeURIComponent() dan gunakan decodeURI() atau decodeURIComponent() sebaliknya.

Atas ialah kandungan terperinci Apakah perbezaan antara fungsi unescape() dan escape() dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam