Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Menyahkod Entiti HTML dengan Selamat dalam JavaScript?

Bagaimana untuk Menyahkod Entiti HTML dengan Selamat dalam JavaScript?

Linda Hamilton
Linda Hamiltonasal
2024-12-23 16:10:18433semak imbas

How to Safely Decode HTML Entities in JavaScript?

Cara Menyahkod Entiti HTML dalam Javascript

Javascript sering berinteraksi dengan sumber luaran seperti backend XML-RPC. Bahagian belakang ini mungkin mengembalikan rentetan yang mengandungi entiti HTML seperti . Apabila cuba untuk memasukkan rentetan ini ke dalam HTML menggunakan Javascript, ia mungkin dipaparkan secara literal atau muncul sebagai entiti HTML yang tidak dapat dielakkan.

Untuk melepaskan entiti HTML ini dengan berkesan, menggunakan teknik daripada sumber luaran mungkin terbukti tidak berjaya. Sebaliknya, manfaatkan kaedah DOMParser yang disokong dalam pelayar moden. Begini caranya:

function htmlDecode(input) {
  var doc = new DOMParser().parseFromString(input, "text/html");
  return doc.documentElement.textContent;
}

Contoh penggunaan:

console.log(htmlDecode("<img src='myimage.jpg'>")); // "<img src='myimage.jpg'>"

console.log(htmlDecode("<img src='dummy' onerror='alert(/xss/)'>")); // ""

Kaedah ini berjaya menyahkod entiti HTML sambil menghalang pelaksanaan kod hasad.

Atas ialah kandungan terperinci Bagaimana untuk Menyahkod Entiti HTML dengan Selamat dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn