Rumah >hujung hadapan web >tutorial js >Cara Mengekod Entiti HTML dalam JavaScript: Panduan Praktikal

Cara Mengekod Entiti HTML dalam JavaScript: Panduan Praktikal

Susan Sarandon
Susan Sarandonasal
2024-10-29 07:07:30647semak imbas

How to Encode HTML Entities in JavaScript: A Practical Guide

Pengekodan Entiti HTML dalam JavaScript

Pengenalan

Apabila memaparkan kandungan yang dijana pengguna, adalah penting untuk mengendalikan aksara khas seperti ® dan &, yang mungkin tidak dipaparkan dengan betul dalam semua penyemak imbas. Untuk menangani perkara ini, adalah perlu untuk menukar simbol ini kepada entiti HTML untuk paparan yang konsisten.

Penyelesaian JavaScript

Pendekatan JavaScript yang mudah untuk mengekod entiti HTML ialah menggunakan ungkapan biasa untuk memadankan simbol yang diingini dan menggantikannya:

<code class="javascript">const encodedStr = rawStr.replace(/[\u00A0-\u9999<>\&amp;]/g, function(i) {
   return '&amp;#'+i.charCodeAt(0)+';';
});</code>

Kod ini berulang pada julat aksara yang diberikan (unikod 00A0 - 9999, tambah ampersand, lebih besar & kurang daripada). Untuk setiap padanan, ia mengembalikan entiti HTML yang setara (&#nnn;), dengan nnn ialah kod aksara unikod.

Pembungkusan Tag Sup

Jika anda memerlukan entiti HTML yang akan dibungkus dalam tag untuk tujuan penggayaan:

<code class="javascript">// First encode the HTML entity as described above.

const encodedStr = rawStr.replace(/[\u00A0-\u9999<>\&amp;]/g, function(i) {
   return '&amp;#'+i.charCodeAt(0)+';';
});

// Then, wrap the encoded entity in a `<sup>` tag:

const supEncodedStr = encodedStr.replace(/\&amp\;#/g, '<sup>&amp;#');</code>

Pertimbangan Tambahan

  • Pastikan tapak web anda menggunakan pengekodan aksara UTF8 untuk menyokong aksara khas ini.
  • Uji penukaran dalam penyemak imbas yang berbeza untuk mengambil kira variasi fon dan konfigurasi.

Atas ialah kandungan terperinci Cara Mengekod Entiti HTML dalam JavaScript: Panduan Praktikal. 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