Melucutkan Teg HTML dalam JavaScript Biasa: Penerokaan Komprehensif
Melucutkan teg HTML daripada teks ialah keperluan biasa dalam pelbagai aplikasi pengaturcaraan. Walaupun JavaScript menawarkan beberapa kaedah dan perpustakaan terbina untuk menyelesaikan tugas ini, artikel ini menyelidiki butiran rumit untuk mencapainya menggunakan JavaScript tulen, tanpa kebergantungan luaran.
Jika tiada perpustakaan seperti jQuery atau penyelesaian berasaskan regex, pendekatan yang paling mudah mengeksploitasi keupayaan sedia ada penyemak imbas untuk mengendalikan HTML. Dengan mencipta serpihan dokumen sementara dan memberikan HTML kepada harta HTML dalamannya, penyemak imbas menghuraikan kandungan dengan lancar dan mengembalikan teks tanpa sebarang teg.
Fungsi JavaScript berikut menunjukkan pendekatan ini:
function stripHtml(html) { let tmp = document.createElement("DIV"); tmp.innerHTML = html; return tmp.textContent || tmp.innerText || ""; }
Fungsi ini mengambil rentetan HTML sebagai input dan mengembalikan teks biasa. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa menggunakan kaedah ini pada HTML yang dijana pengguna adalah tidak digalakkan, kerana ia berpotensi membawa kepada pelaksanaan kod berniat jahat.
Bagi senario tersebut, pendekatan yang lebih selamat melibatkan penggunaan DOMParser, API yang diperkenalkan dalam HTML5:
function stripHtml(html) { const parser = new DOMParser(); const document = parser.parseFromString(html, "text/html"); return document.documentElement.textContent; }
Fungsi ini menggunakan DOMParser untuk mencipta objek dokumen daripada rentetan HTML, kemudian mengekstrak kandungan teks daripada elemen akar dokumen. Pendekatan ini menyediakan keselamatan dan kawalan yang dipertingkatkan ke atas input, menjadikannya sesuai untuk mengendalikan HTML yang berpotensi tidak dipercayai.
Memilih teknik yang sesuai bergantung pada kes penggunaan dan pertimbangan keselamatan khusus. Untuk kebanyakan senario, pendekatan pertama menggunakan innerHTML menawarkan kesederhanaan dan kecekapan. Walau bagaimanapun, jika berurusan dengan input yang tidak dipercayai, menggunakan DOMParser disyorkan untuk keselamatan dan kebolehpercayaan tambahan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengalih Keluar Teg HTML daripada Teks Hanya Menggunakan JavaScript Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!